当前位置: 代码迷 >> Sybase >> 怎么将多行数据合并成一行多列
  详细解决方案

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

热度:5843   发布时间:2013-02-26 00:00:00.0
如何将多行数据合并成一行多列
如何将多行数据合并成一行多列(不用存储过程) 
数据:  
  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
  相关解决方案