设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
中问网首页
我的收藏
站长博客
搜索
搜索
本版
帖子
用户
第一问答网
»
论坛
›
中问网
›
问答
›
请教一个sql怎么写???
返回列表
发新帖
请教一个sql怎么写???
[复制链接]
11
|
8
|
2014-9-12 22:37:43
|
显示全部楼层
|
阅读模式
12345
C0000610
AA
CM1050J50
8/22/2004
12345
C0000610
BB
G9CH20PT
8/22/2004
12345
C0000610
CC
CCHH220JT
8/22/2004
48700
C0000610
BB
G85C1220J
7/11/2005
35490
C0000610
CC
CC1H220JT
12/15/2004
需要选出第一,四,五行。
即选出最近变化的一条纪录
请个位帮帮忙的说。谢了
回复
使用道具
举报
千问
|
2014-9-12 22:37:43
|
显示全部楼层
说实话,我看晕了!
1,需要选出1,4,5行
2,还要选出最近变化的 1 条记录……
回复
使用道具
举报
千问
|
2014-9-12 22:37:43
|
显示全部楼层
呵呵,不好意思写的不明确。我所说的两个条件是一回事,没有表述清楚。
结果就是要选出第一,四,五行出来。
回复
使用道具
举报
千问
|
2014-9-12 22:37:43
|
显示全部楼层
关键是在第三列
回复
使用道具
举报
千问
|
2014-9-12 22:37:43
|
显示全部楼层
按第一列分组,按第5列排序,每组取一列,是这样的吗?
回复
使用道具
举报
千问
|
2014-9-12 22:37:43
|
显示全部楼层
应该是按第三列分组,第五列排序,取出其时间最近的。
按第三列:
因为对AA,08/22/2004是最近的一条纪录,
对BB,07/11/2005是最近的一条纪录,
对CC,12/15/2004是最近的一条纪录。
不知道怎么搞定他。。。
回复
使用道具
举报
千问
|
2014-9-12 22:37:43
|
显示全部楼层
如果同一天对同样的AA或者BB或者CC,有两条或者更多的记录时间一样,你怎么办?
若要都取出,将下面的row_numbere()换成rank()
[php]
select c1,c2,c3,c4,c5 from
(
select c1,c2,c3,c4,c5,row_number() over(partition by c3 order by c5 desc) r from t
)
where r=1
...
[/php]
回复
使用道具
举报
千问
|
2014-9-12 22:37:43
|
显示全部楼层
时间是精确到秒的(我把它简化了),所以基本上不会有这种情况
回复
使用道具
举报
千问
|
2014-9-12 22:37:43
|
显示全部楼层
select a,b,c,d,e from (
select a,b,c,d,e,row_number()over(partition by a order by c)rn
where rn = 1 ) t
oder by a
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
千问
主题
0
回帖
4882万
积分
论坛元老
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
积分
48824836
加好友
发消息
回复楼主
返回列表
问答
热门排行