我有一个名为x的表,该表有id列和重复状态列。 id可以存储相同的值甚至其中的6个,而每次插入id时重复状态递增1,2 ... n。如果插入了新的不同ID,则重复状态从1开始,例如
xid repeat_status
xx123 1
xx123 1
xx123 2
xx123 3
xx123 3
xxx45 1
xxx45 2
xxx45 2
如何修改下面的查询以返回如下内容:
xid repeat_status
xx123 1
xx123 2
xx123 3
xxx45 1
xxx45 2
SELECT xid
,repeat_status
FROM x
GROUP BY repeat_status;
答案 0 :(得分:3)
select distinct xid, repeat_status
from x
order by xid, repeat_status
答案 1 :(得分:3)
您也可以尝试按此查询分组
SELECT xid, repeat_status FROM x
GROUP BY xid,repeat_status
发布:What is difference between DISTINCT and GROUP BY?
DISTINCT和GROUP BY通常会生成相同的查询计划,因此两个查询结构的性能应该相同。
但是这是 sql server 没有想法回合 mysql