Oracle的日常使用

1、計算返回值,如果返回爲空直接轉換爲0

NVL
NVL函數的格式如下:NVL(expr1,expr2)
含義是:如果oracle第一個參數爲空那麼顯示第二個參數的值,如果第一個參數的值不爲空,則顯示第一個參數本來的值。

SELECT NVL(SUM(SUBMITSUMMONEY),0) SUM FROM 數據表 WHERE CREATE_UID = #{userId}

2、字符串日期轉化

現將字符串格式的日期轉換爲日期格式,然後按月截取分組。
SYSDATE : 只查詢今年日期

SELECT to_char( to_date(END_TIME,'yyyy-mm-dd,hh24:mi:ss'), 'yyyy-mm' ) TIME ,sum( 1 ) NUM
        FROM
        ACT_REVIEW_V_PROJDONELIST T
        where
        to_char( to_date( T.END_TIME, 'yyyy-mm-dd,hh24:mi:ss' ), 'yyyy' ) = to_char( SYSDATE, 'yyyy' ) AND
        (T.CANDIDATEID = #{userId} OR T.ASSIGNEEID = #{userId})
        AND T.END_TIME = (SELECT MAX(A.end_TIME) FROM ACT_REVIEW_V_PROJDONELIST A WHERE A.PROC_INST_ID = T.PROC_INST_ID
        AND A.CANDIDATEID = T.CANDIDATEID)
        GROUP BY
        to_char( to_date(T.END_TIME,'yyyy-mm-dd,hh24:mi:ss'), 'yyyy-mm' )
        ORDER BY
        to_char( to_date(T.END_TIME,'yyyy-mm-dd,hh24:mi:ss'), 'yyyy-mm' )
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章