请问SQL SERVER里的SQL如何去重重复列?
答案:3 悬赏:40 手机版
解决时间 2021-11-28 20:57
- 提问者网友:焚苦与心
- 2021-11-27 22:13
请问SQL SERVER里的SQL如何去重重复列?
最佳答案
- 五星知识达人网友:woshuo
- 2021-11-27 22:56
select * from table1 a
where not exists(select 1 from table1 where col2=a.col2 and col1
结果
COL1 COL2 COl3
1 abc 10
3 xyz 10
4 ijik 9
如果要显示列2则修改 col1a.COL1追问哇!好像是可以的!但是括号里的 SELECT 1 是什么意思呢?追答因为exists的判断条件只是 "有或者没有结果" 所以select 后只需要接一个返回列就行了,而写个1什么的比*或列名节约资源(个人认为啊)
where not exists(select 1 from table1 where col2=a.col2 and col1
结果
COL1 COL2 COl3
1 abc 10
3 xyz 10
4 ijik 9
如果要显示列2则修改 col1a.COL1追问哇!好像是可以的!但是括号里的 SELECT 1 是什么意思呢?追答因为exists的判断条件只是 "有或者没有结果" 所以select 后只需要接一个返回列就行了,而写个1什么的比*或列名节约资源(个人认为啊)
全部回答
- 1楼网友:西岸风
- 2021-11-28 01:52
做不到, 其他两列不重复如何取舍呢?追问只以COL2作为重复标准,COL3不一样的只取一个,随机一个或者最大最小的都可以。
就是其他两列随便取。
求教啊大师。
就是其他两列随便取。
求教啊大师。
- 2楼网友:鱼芗
- 2021-11-28 00:16
那就对COL2加group by
select * from A group by COL2我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯