请教取每组第一条记录的sql写法

wei2004 2006-11-07 03:29:33
假设表中数据如下
id date pos
1248 2006-06-12 3
1248 2006-01-15 2
1411 2005-11-15 2
1411 2006-08-09 1
1411 2006-11-07 1
1520 2006-10-02 2
我想得到每个id中date最新的一条记录,即
id date pos
1248 2006-06-12 3
1411 2006-11-07 1
1520 2006-10-02 2

sql该怎么写?
...全文
292 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wei2004 2006-11-08
  • 打赏
  • 举报
回复
谢谢各位啦,问题已经解决
a5174 2006-11-08
  • 打赏
  • 举报
回复
经验证,kingkingkingking(南极飘雪)非常对,赞,
youqiong(今夜有风) 貌似不对,反正不能实现!
wuyanke(天才呆子)sql语句是对的,但在datawindow里面功能不能实现哦!

其他几位,嘿嘿,应该是不对的哦!
楼主,帮你那么大忙多给我点分哦!
youqiong 2006-11-07
  • 打赏
  • 举报
回复
select *
from 表名
where 客户编号+convert(varchar,日期) in
(select 客户编号+convert(varchar,max(日期)) from 表名
where 日期=max(日期)
group by 客户编号) ;
wuyanke 2006-11-07
  • 打赏
  • 举报
回复
select id, max(date), pos from table group by id,pos
kingkingkingking 2006-11-07
  • 打赏
  • 举报
回复
select id, date, pos
from (
select id, date, pos,
row_number()
over (partition by id order by date desc) row_id
from 表
)
where row_id = 1
oracle8i以上版本可用
allright_flash 2006-11-07
  • 打赏
  • 举报
回复
select id, max(date), pos from table group by id;
zzxing 2006-11-07
  • 打赏
  • 举报
回复
select id, max(date), pos from table group by id;
wei2004 2006-11-07
  • 打赏
  • 举报
回复
建立一个datawindow如何实现,数据库是oracle

1,079

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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