很多業務需求存儲數據的時候都采取key/value的形式,展示時則需要key1,key2,key3....展示
效果如下:
sql語句如下
SELECT ROUND(SUM(CASE WHEN DATA_ITEM_CODE='BACKN52' THEN DATA_ITEM_VALUE ELSE '0' END),2) AS 磨煤機入口壓力,ROUND(SUM(CASE WHEN DATA_ITEM_CODE='BACKN53' THEN DATA_ITEM_VALUE ELSE '0' END),2) AS 磨煤機加載壓力, ROUND(SUM(CASE WHEN DATA_ITEM_CODE = 'BACKN54' THEN DATA_ITEM_VALUE ELSE '0' END), 2) AS 收粉器入口壓力, ROUND(SUM(CASE WHEN DATA_ITEM_CODE = 'BACKN55' THEN DATA_ITEM_VALUE ELSE '0' END), 2) AS 收粉器出口壓力, ROUND(SUM(CASE WHEN DATA_ITEM_CODE = 'BACKN56' THEN DATA_ITEM_VALUE ELSE '0' END), 2) AS 煤粉倉重, ROUND(SUM(CASE WHEN DATA_ITEM_CODE = 'BACKN57' THEN DATA_ITEM_VALUE ELSE '0' END), 2) AS 廢氣溫度 from(SELECT * FROM TABLE_NAME WHERE WORK_TIME >= TO_CHAR('20200921' - 1) || '200000' AND WORK_TIME <'20200921'|| '200000' ) group by WORK_TIME ORDER BY WORK_TIME;
關鍵字 CASE WHEN...THEN..ELSE..END
分組匯總后進行縱列變橫列(上邊的數據、圖片僅供展示)
后期會更新sql相關知識