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
相关推荐
XS0301062 分钟前
JDBC实现数据库增删改查
数据库
茉莉玫瑰花茶8 分钟前
LangGraph 入门教程:构建 AI 工作流 [ 案例一 ]
数据库
宸凉12 分钟前
Oracle 19C的安装
数据库·oracle
YL2004042620 分钟前
MySQL-基础篇-约束
数据库·mysql
麦聪聊数据21 分钟前
SQL与数据库开发(五):纯 SQL 解决“连续签到”与“用户留存”问题
数据库·sql·数据库开发
刘~浪地球27 分钟前
MongoDB数据模型设计:构建高效的文档结构
数据库·mongodb
AC赳赳老秦34 分钟前
数据安全合规:OpenClaw 敏感信息脱敏、操作日志审计、权限精细化管控方案,符合等保要求
网络·数据库·python·安全·web安全·oracle·openclaw
TDengine (老段)44 分钟前
TDengine 整体架构全景 — 深度解析
大数据·数据库·物联网·架构·时序数据库·tdengine·涛思数据
Mahir081 小时前
MySQL 事务全解:从 ACID 特性到并发问题,再到底层实现与线上最佳实践
数据库·mysql·面试
前进的李工1 小时前
高效索引优化:数据库查询提速指南(适合创建索引的11种情况)
数据库·mysql·面试