SQL: 删除一个列中重复的数据,但保留一行。假设 表A的列B 有三个a ,要求删除2个,保留1个!!!

[复制链接]
查看11 | 回复3 | 2012-7-3 14:58:36 | 显示全部楼层 |阅读模式
这个是SQL中distinct的典型用法:1)从字面意思就可以了解到:distinct [dis'ti?kt]adj. 明显的;独特的;清楚的;有区别的2)在SQL中用distinct来消除重复出现的字段值。使得每个字段值只出现一次。 具体用法如下:select distinct 字段名 from 表;distinct 字段名意思就是只显示一次该字段名一般情况下和order by 结合使用,这样可以提高效率。 所以你这个问题的答案是:select distinct B from A;希望我的回答能让您满意。...
回复

使用道具 举报

千问 | 2012-7-3 14:58:36 | 显示全部楼层
delete from ABCD where ID not in(select distinct ID from ABCD);...
回复

使用道具 举报

千问 | 2012-7-3 14:58:36 | 显示全部楼层
DELETE FROM ABCD a WHERE ID>(SELECT MIN(b.ID) FROM ABCD b WHERE b.name=a.name )...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行