首页 新闻 会员 周边 捐助

这个sql查询该怎么写

0
悬赏园豆:5 [已解决问题] 解决于 2014-07-08 10:15

一个表有三列,userid,value,addtime

userid是用户id,value有三种值,比如a,b,c,addtime是插入时间

现在要求这样的查询:要7列,userid,a,b,c,该用户第一条value为a的数据的addtime,该用户第一条value为b的数据的addtime,该用户第一条value为c的数据的addtime。

 

userid不重复的

sql
拖鞋王子的主页 拖鞋王子 | 初学一级 | 园豆:38
提问于:2014-05-30 13:11
< >
分享
最佳答案
0

先行转列,a,b,c 转成列,时间值不用转只要加上。

再对a,b,c 的列值取最大值。

最后排序:a,b,c

 

 

收获园豆:5
Albert Fei | 老鸟四级 |园豆:2102 | 2014-05-30 13:39

帮我写一下吧

拖鞋王子 | 园豆:38 (初学一级) | 2014-05-30 14:07

@拖鞋王子: 你用case when 条件 then 表达式 end as 列名 形式进行行转列

行转列后用max()可以取到你想要的最大值

再用group by 分组和order by 排序就好了

最好你自己试试怎么写

Albert Fei | 园豆:2102 (老鸟四级) | 2014-06-04 17:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册