当前位置: 代码迷 >> 综合 >> Oracle SQL nvl(),listagg() within group(),TO_CHAR(),CASE WHEN THEN ELSE END
  详细解决方案

Oracle SQL nvl(),listagg() within group(),TO_CHAR(),CASE WHEN THEN ELSE END

热度:99   发布时间:2024-02-02 07:01:22.0

Oracle SQL 函数使用记录

nvl(列名,替换值)

NVL(column_name,0) 用来判断字段的值是否为null,如果查询的字段值为null,则将其用其他字符代替,效果如下
在这里插入图片描述
在这里插入图片描述

listagg(要合并的列名,分隔符) within group(order by 排序列名 ASC/DESC )

LISTAGG(ENAME, ‘,’) WITHIN GROUP (ORDER BY ENAME)用来合并条件相同的字段值,结果用1行显示,效果如下
在这里插入图片描述
在这里插入图片描述

TO_CHAR(HIREDATE,‘YYYY-MM-DD’)

TO_CHAR()用来转换格式,我这里用来转换日期格式,其他用处暂时不知,效果如下
在这里插入图片描述

CASE WHEN THEN ELSE END

个人觉得是SQL中的if语句吧,效果如下
在这里插入图片描述
根据列JOB为判断条件,满足条件给新列NEW_JOB插入 THEN后面的值,不满足则插入 ELSE后面的值。

  相关解决方案