求一条SQL语句,结果对于重复的纪录,只保留最近日期的一条记录,其他屏蔽掉

guoruixing 2008-03-10 09:11:44
表中的一个字段,有重复项,另外还有一个日期字段,要求检索结果中去掉重复,只保留一条,但是保留的重复项的日期必须是最新的

例如:
==========
编号 日期
1008 2008-3-9
1009 2008-3-10
1008 2008-3-10

结果如下:
===========
编号 日期
1008 2008-3-10
1009 2008-3-10
...全文
131 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Limpire 2008-03-10
  • 打赏
  • 举报
回复
--> 不止两列
select * from 表 a where 日期 = (select max(日期) from 表 where 编号=a.编号)

--> 两列
select 编号,日期=max(日期) from 表 group by 编号
wzy_love_sly 2008-03-10
  • 打赏
  • 举报
回复
select * from tb t
where not exists(
select 1 from tb where 编号=t.编号 and 日期<t.日期
)
fcuandy 2008-03-10
  • 打赏
  • 举报
回复
见第一例. 同一分组中取一条.

http://topic.csdn.net/u/20080123/18/9731d130-0d4b-4c11-8d89-f2c3ca331f0c.html

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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