一个表有三列,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不重复的
先行转列,a,b,c 转成列,时间值不用转只要加上。
再对a,b,c 的列值取最大值。
最后排序:a,b,c
帮我写一下吧
@拖鞋王子: 你用case when 条件 then 表达式 end as 列名 形式进行行转列
行转列后用max()可以取到你想要的最大值
再用group by 分组和order by 排序就好了
最好你自己试试怎么写