去除重复值问题

mxbhot85 2010-04-25 11:14:16
table A
id name
1 a
2 b
3 c
4 a
5 b

去除重复值,但是id取最小的

id name
1 a
2 b
3 c


在ms sql中 如果用group by name,id这一列select出来,
如何处理呢?

望高手出招。。。
...全文
66 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
dichun 2010-04-26
  • 打赏
  • 举报
回复
select min(id) ,name from a group by name desc
永生天地 2010-04-26
  • 打赏
  • 举报
回复
[Quote=引用楼主 mxbhot85 的回复:]
在ms sql中 如果用group by name,id这一列select出来,
如何处理呢?

[/Quote]
id不能参与group by,id都不是重复的
「已注销」 2010-04-26
  • 打赏
  • 举报
回复
写个临时表,
先GROUP BY 到临时表,
删除原有数据,
从临时表中读入到表中,
mxbhot85 2010-04-25
  • 打赏
  • 举报
回复
谢谢大家哦 回答好详细哦
dawugui 2010-04-25
  • 打赏
  • 举报
回复
--如果只有ID,NAME两个字段,则如下:
select min(id) id , name from a group by name

--如果不止这两个字段,则如下:
select t.* from a t where id = (select min(id) from a where name = t.name)
select t.* from a t where exists (select 1 from a where name = t.name and id < t.id)
mxbhot85 2010-04-25
  • 打赏
  • 举报
回复
自己先顶下
百年树人 2010-04-25
  • 打赏
  • 举报
回复
select min(id) id,name from A group by name
dawugui 2010-04-25
  • 打赏
  • 举报
回复
select min(id) id , name from tb group by name

22,199

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧