检索行合并
SELECTUSER_ID ,
CASE WHEN SYSTEM_CODE = '01' THEN '1' END AS sys1 ,
CASE WHEN SYSTEM_CODE = '02' THEN '1' END AS sys2 ,
CASE WHEN SYSTEM_CODE = '03' THEN '1' END AS sys3 ,
CASE WHEN SYSTEM_CODE = '04' THEN '1' END AS sys4 ,
FROM
T_SYS
WHERE
DELETE_FLG = '0'
AND CHANGE_TIMESTAMP >= '2009-04-1-00.00.00.000000'
GROUP BY USER_ID,SYSTEM_CODE
用上面的SQL检索的结果如下:
USER_ID sys1 sys2sys3sys4
---------- --- ------ ----- ------
901236 1 - - -
901236 - 1 - -
901236 - - -1 -
901236 - - - -1
请问我怎么能把4行的901236合并为1行显示出来。
USER_ID sys1 sys2sys3sys4
---------- --- ------ ----- ------
901236 1 1 1 1 SELECT
USER_ID ,
CHAR(SUM(CASE WHEN SYSTEM_CODE = '01' THEN1 ELSE 0 END) )AS sys1 ,
CHAR(SUM(CASE WHEN SYSTEM_CODE = '02' THEN1 ELSE 0 END) )AS sys2 ,
CHAR(SUM(CASE WHEN SYSTEM_CODE = '03' THEN1 ELSE 0 END) )AS sys3 ,
CHAR(SUM(CASE WHEN SYSTEM_CODE = '04' THEN1 ELSE 0 END)) AS sys4 ,
FROM
T_SYS
WHERE
DELETE_FLG = '0'
AND CHANGE_TIMESTAMP >= '2009-04-1-00.00.00.000000'
GROUP BY USER_ID,SYSTEM_CODE
页:
[1]