SQL每日一题:删除重复电子邮箱

题干

表: Person

±------------±--------+

| Column Name | Type |

±------------±--------+

| id | int |

| email | varchar |

±------------±--------+

id 是该表的主键列(具有唯一值的列)。

该表的每一行包含一封电子邮件。电子邮件将不包含大写字母。

编写解决方案 删除 所有重复的电子邮件,只保留一个具有最小 id 的唯一电子邮件。

(对于 SQL 用户,请注意你应该编写一个 DELETE 语句而不是 SELECT 语句。)

(对于 Pandas 用户,请注意你应该直接修改 Person 表。)Person 表的最终顺序 无关紧要。返回结果格式如下示例所示。

示例

解答

使用delete和where语句,通过将此表与自身在 Email 列上连接,然后找到具有相同电子邮件地址的其他记录中较大的 id。

sql 复制代码
delete p1 from person p1, person p2 
where p1.email=p2.email and p1.id>p2.id
相关推荐
今儿敲了吗13 分钟前
数据库(四)——关系数据库SQL语言
数据库·笔记·sql
麦聪聊数据15 分钟前
SQL与数据库开发(二):用 CTE 重构嵌套查询与处理树形结构
sql·数据库开发
brevity_souls16 分钟前
SQL server格式化日期
运维·服务器·数据库
虹科网络安全18 分钟前
艾体宝干货|Active-Active/Active-Passive 数据库架构解析:高可用设计中的权衡与选型
数据库·数据库架构
麦聪聊数据18 分钟前
SQL与数据库开发(一):用窗口函数替代应用层的嵌套循环
数据库·sql·数据库开发
努力进修21 分钟前
连接条件下推原理与实战:解决子查询、CTE大数据量性能问题
数据库·oracle
小贺儿开发22 分钟前
Unity3D 年会抽奖工具(附体验链接)
数据库·unity·excel·人机交互·工具·抽奖·互动
imuliuliang30 分钟前
Laravel8.x核心特性全解析
数据库
战南诚37 分钟前
mysql的坑 - count计数
数据库·mysql
薪火铺子1 小时前
MySQL 性能优化:慢查询与索引优化实战
数据库·mysql·性能优化