当前位置: 代码迷 >> Sql Server >> Sql预计依据编号查询相同时间的值
  详细解决方案

Sql预计依据编号查询相同时间的值

热度:10061   发布时间:2013-02-26 00:00:00.0
Sql预计根据编号查询相同时间的值
有下列表数据
dataId                 tm                 v
21          2012/12/1 00:00:00            13
21          2012/12/1 01:00:00            12
22          2012/12/1 00:00:00            3
22          2012/12/1 01:00:00            1
23          2012/12/1 00:00:00            5
23          2012/12/1 01:00:00            6
24          2012/12/1 00:00:00            7
24          2012/12/1 01:00:00            8
写一条sql语句查询如下结果该怎么写?

 tm                    v1       v2       v3     v4
2012/12/1 00:00:00     13       3        5      7
2012/12/1 01:00:00     12       1        6      8

sql

------解决方案--------------------------------------------------------
竖转横

select tm,
max(case when dataid=21 then v else null end) as v1,
max(case when dataid=22 then v else null end) as v2,
max(case when dataid=23 then v else null end) as v3,
max(case when dataid=24 then v else null end) as v4
from 表名
group by tm
  相关解决方案