当前位置:Gxlcms > 数据库问题 > SQL sever 自连接

SQL sever 自连接

时间:2021-07-01 10:21:17 帮助过:19人阅读

DELETE FROM F F1 2 WHERE ID < 3 ( 4 SELECT MAX(F2.ID) 5 FROM F F2 6 WHERE F1.SG=F2.SG AND F1.SL=F2.SL 7 )

先筛选名称价格相等得到符合条件,然后取出最大的一条,然后通过大小判断,因为梨子、橘子只有一条2<2不成立,

所以筛选出ID小于最大ID5的两个重复苹果

1 DELETE FROM F F1 WHERE  EXISTS(SELECT* FROM  F F2 WHERE F1.SG=F2.SG AND F1.SL=F2.SL AND F1.ID<F2.ID)

这个通过EXISTS将条件为True的返回,要把这两个表当成两个单独的集合,名称价格相等,然后将ID值小的筛选出来,最大的一个留下。

只有一条数据的是不可能小于自己的,但有多条数据的,嘿嘿。

 

SQL sever 自连接

标签:苹果   ack   tab   seve   rgb   ever   相等   idt   最大   

人气教程排行