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' )
发布了11 篇原创文章 · 获赞 5 · 访问量 2061

猜你喜欢

转载自blog.csdn.net/skyline_lin/article/details/105650298
今日推荐