读书人

怎么将多行数据合并成一行多列

发布时间: 2012-03-05 11:54:02 作者: rapoo

如何将多行数据合并成一行多列
如何将多行数据合并成一行多列(不用存储过程)
数据:
objid date value type
01 2010-01-01 100 1
01 2010-01-01 200 2
01 2010-01-01 300 3

合并后的效果应如下:
objid date value1 value2 value3
01 2010-01-01 100 200 300

[解决办法]
SELECT objid,date,SUM(CASE WHEN TYPE=1 THEN VALUE ELSE 0 END) AS VALUE1,
SUM(CASE WHEN TYPE=2 THEN VALUE ELSE 0 END) AS VALUE2,
SUM(CASE WHEN TYPE=3 THEN VALUE ELSE 0 END) AS VALUE3
FROM TT
GROUP BY objid,date

读书人网 >Sybase

热点推荐