搜索
编程论坛
→
数据库技术
→
『 Oracle论坛 』
→ 求高手指点一句SQL
标题:
求高手指点一句SQL
只看楼主
南川
等 级:
业余侠客
威 望:
1
帖 子:111
专家分:235
注 册:2010-6-25
结帖率:
86.21%
楼主
已结贴
√
问题点数:18 回复次数:2
求高手指点一句SQL
我现在有一张表,包括id,date,value
例如:
id date value
1 20110912 30
2 20110912 20
1 20110911 50
3 20110911 10
4 20110910 60
我要取的数据是每个id的最新一条记录,结果即为
id date value
1 20110912 30
2 20110912 20
3 20110911 10
4 20110910 60
这条SQL怎么写呀?谢谢!
搜索更多相关主题的帖子:
104
2011-09-12 20:58
zwk199024
等 级:
论坛游侠
帖 子:63
专家分:102
注 册:2010-9-15
第
2
楼
得分:18
select 表.* from 表,(select max(date) maxdate,id from 表 group by id) a where a.maxdate = 表.date and a.id = 表.id;
2011-09-15 16:53
muyiyuwen
来 自:浙江*衢州
等 级:
新手上路
帖 子:27
专家分:7
注 册:2009-3-16
第
3
楼
得分:0
select id,date,value
from( select table.*,row_number() over(partition by id order by date desc) cc from table
) t where t.cc=1
row_number() over() 函数就能实现这个功能。
在大四即将毕业的日子里,我无聊又憧憬的选择了java
2011-09-23 09:38
3
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-349783-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.227247 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved