leetcode 删除一张表中重复邮箱的数据,并且保留最小id 的 那条

 

/*
create view testview as SELECT subject,MIN(Id) as id FROM test GROUP BY subject;
select * FROM test WHERE id not in (SELECT id FROM testview);
*/
mysql> select * from test;
+----+------------+-------+-----------+
| id | name       | score | subject   |
+----+------------+-------+-----------+
|  1 | xiaoming   |    89 | shuxue    |
|  2 | xiaohong   |    89 | shuxue    |
|  3 | xiaohong   |    80 | english   |
|  4 | xiaohong   |    80 | physics   |
|  5 | xiaohong   |    80 | astronaut |
|  6 | xiaoming   |    80 | physics   |
|  7 | xiaoming   |    80 | astronaut |
|  8 | xiaoming   |    80 | english   |
|  9 | xiaobai    |    80 | astronaut |
| 10 | 1.2xiaobai |    80 | english   |
| 11 | 2.2xiaobai |    80 | physics   |
| 12 | 3xiaobai   |    80 | shuxue    |
| 13 | 123xiaohei |    80 | astronaut |
| 14 | xiaohei    |    80 | shuxue    |
| 15 | xiaohei    |    80 | physics   |
| 16 | .12xiaohei |    80 | english   |
+----+------------+-------+-----------+
16 rows in set (0.00 sec)



mysql> create view testview as SELECT subject,MIN(Id) as id FROM test GROUP BY subject;
Query OK, 0 rows affected (0.01 sec)



mysql> select * FROM test WHERE id not in (SELECT id FROM testview);               +----+------------+-------+-----------+
| id | name       | score | subject   |
+----+------------+-------+-----------+
|  2 | xiaohong   |    89 | shuxue    |
|  6 | xiaoming   |    80 | physics   |
|  7 | xiaoming   |    80 | astronaut |
|  8 | xiaoming   |    80 | english   |
|  9 | xiaobai    |    80 | astronaut |
| 10 | 1.2xiaobai |    80 | english   |
| 11 | 2.2xiaobai |    80 | physics   |
| 12 | 3xiaobai   |    80 | shuxue    |
| 13 | 123xiaohei |    80 | astronaut |
| 14 | xiaohei    |    80 | shuxue    |
| 15 | xiaohei    |    80 | physics   |
| 16 | .12xiaohei |    80 | english   |
+----+------------+-------+-----------+
12 rows in set (0.00 sec)

 

 

参考:

https://www.cnblogs.com/justdo-it/articles/8480460.html

 

转载于:https://www.cnblogs.com/sea-stream/p/11351238.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值