sql求一条语句如何查询重复记录只显示重复的第一条记录?

iddatays1重复132重复123重复244重复25sqldata按重复运行显示结果如下:1重复132重复24... id data ys
1 重复1 3
2 重复1 2
3 重复2 4
4 重复2 5
sql data按重复运行显示结果如下:
1 重复1 3
2 重复2 4
展开
 我来答
百度网友9152734da
2008-07-07 · TA获得超过172个赞
知道小有建树答主
回答量:249
采纳率:0%
帮助的人:137万
展开全部
不太明白你的意思,难道id是可变的??太恐怖了
这个行不行
select id,data,ys from tab where id in (select max(id) from tab group by data)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友2db262e5f
2008-07-07 · TA获得超过1496个赞
知道大有可为答主
回答量:1814
采纳率:0%
帮助的人:1441万
展开全部
你的意思是说:如果有重复的,就取ID最小的那个记录,然后再重新为结果分配另外一个ID?
select row_number() over(order by b.minid) as nid,b.data,a.ys from biao a inner join (select data,min(id) as minid from biao group by data) b on a.id=b.minid
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
feiyunlong
2008-07-07 · 超过19用户采纳过TA的回答
知道答主
回答量:65
采纳率:0%
帮助的人:44.5万
展开全部
这样应该可以 你试下
select id,data,ys from table_name where data in (select distinct data from table_name)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ba527
2008-07-07 · TA获得超过120个赞
知道小有建树答主
回答量:474
采纳率:0%
帮助的人:221万
展开全部
使用distinct可以达到你要的功能。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangjie_02
2008-07-07 · 超过54用户采纳过TA的回答
知道答主
回答量:280
采纳率:0%
帮助的人:0
展开全部
大体格式,可根据自己情况加条件
select distinct * from tab tab1 where (select count(*) from tab tab2 where tab2.data=tab1.data)>1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式