帮忙看下这个SQL怎么写

qixianzhen002 2017-05-18 01:17:49
有张表 如下:


司机 车站 上车下车标识 时间
001 A 0 2017-1-1
002 A 1 2017-1-1
001 A 1 2017-1-1
003 C 0 2017-1-1


我要查出来效果是 (0上车 1下车)

司机 车站 上车 时间 下车 时间
...全文
109 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
小当家e 2017-05-18
  • 打赏
  • 举报
回复
你需要的话,在把wm_concat(上车) 这些重命名就好了,如wm_concat(上车) as 上车
小当家e 2017-05-18
  • 打赏
  • 举报
回复
select 司机,车站,wm_concat(上车),wm_concat(上车时间),wm_concat(下车),wm_concat(下车时间) from ( select 司机,车站, decode(上车下车标识,0,上车下车标识,null) 上车, decode(上车下车标识,0,时间,null) 上车时间, decode(上车下车标识,1,上车下车标识,null) 下车, decode(上车下车标识,1,时间,null) 下车时间 from 表 ) group by 司机,车站 order by 司机,车站
qixianzhen002 2017-05-18
  • 打赏
  • 举报
回复
司机 车站 上车下车标识 时间 001 A 0 2017-1-1 002 A 1 2017-1-1 001 B 1 2017-1-12 003 C 0 2017-1-1 是这样的效果 司机 车站 上车 时间 车站 下车 时间 001 A 0 2017-1-1 B 1 2017-1-12
qixianzhen002 2017-05-18
  • 打赏
  • 举报
回复
下车时间判断逻辑是根据司机最新上车时间找到最近的一条下车时间

3,499

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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