1. 程式人生 > 其它 >記錄兩個實用的資料庫函式

記錄兩個實用的資料庫函式

SELECT ROLL_PLAN_NO,NOM_ROLL_THICK,NOM_ROLL_WIDTH,NOM_SLAB_WIDTH,LG_ST,COUNT(*) AS NUM ,
SUM(CASE WHEN FILL_REASON=' ' THEN 1 ELSE 0 END) 正常計劃, 
SUM(CASE WHEN FILL_REASON='1' THEN 1 ELSE 0 END) 無委,
SUM(CASE WHEN FILL_REASON='2' THEN 1 ELSE 0 END) 填充
FROM HPMOMMA00 WHERE ROLL_PLAN_NO='112076' GROUP BY ROLL_PLAN_NO,NOM_ROLL_THICK,NOM_ROLL_WIDTH,NOM_SLAB_WIDTH,LG_ST 
UNION ALL
SELECT ROLL_PLAN_NO,NOM_ROLL_THICK,NOM_ROLL_WIDTH,NOM_SLAB_WIDTH,LG_ST,COUNT(
*) AS NUM, SUM(CASE WHEN FILL_REASON=' ' THEN 1 ELSE 0 END) 正常計劃, SUM(CASE WHEN FILL_REASON='1' THEN 1 ELSE 0 END) 無委, SUM(CASE WHEN FILL_REASON='2' THEN 1 ELSE 0 END) 填充 FROM TPMOMMA00 WHERE ROLL_PLAN_NO='112076' GROUP BY ROLL_PLAN_NO,NOM_ROLL_THICK,NOM_ROLL_WIDTH,NOM_SLAB_WIDTH,LG_ST
SELECT NVL(SUM(NOM_SLAB_WT),0
) FROM TPMOMMA00 WHERE ORDER_NO='"+order_no+"' AND APP_STATUS<='64' AND FILL_REASON='2'

這個NVL函式是若查出來為NULL則為0,前面是case when實用統計