sql中的函数
函数的定义跟java 差不多
➢ 必须有返回值,单值函数主要是用来处理一个列中多行数据
哑表(dual )
➢ 哑表的名字为dual, 这个表是虚拟的,不存在的,主要是用来构建或者验证select 语
法。这个表里面永远只有一条数据,那就是查询出来的数据
单值函数
➢ 字符函数
◆ LOWER 返回转换成小写的字符串
◆ UPPER 转换为大写的字符串
◆ INITCAP 首字母大写的字符串
◆ CONCAT 连接字符串
◆ SUBSTR 返回截取的字符串 substr(‘字符串’,从第几位开始截取,截取几位)
◆ LENGTH 返回字符串的长度
◆ NVL
◆ Nvl(arg1,arg2)
➢ 如果参数为空,返回参数2
◆ Nvl2(arg1,agr2,agr3)
➢ 如果参数为空,返回参数2 ,不为空返回参数3
◆ Nullif(arg1,arg2)
➢ 如果参数1= 参数2 那么就返回null
➢ 数字函数
四舍五入
ROUND(要四舍五入的数字,保留到哪一位)
TRUNC 和 round 的用法一样, 但是 trunc 只舍去不进位
取余
MOD(数字一,数字二)
➢ 日期函数
获取当前时间Sysdate,可以对日期进行加减,单位是天
◆ MONTHS_BETWEEN(arg1,arg2)
➢ 俩个日期之间相差多少个月 【 单位是月 】
◆ ADD_MONTHS(arg1,arg2)
➢ 返回一个日期数据: 表示一个时间点, 往后推 x 月的日期
◆ NEXT_DAY(arg1,arg2)
➢ 返回日期: 表示下一个星期几在哪一天
◆ LAST_DAY
➢ 返回日期: 表示指定月份的最后一天
◆ ROUND
➢ 对日期进四舍五入, 返回操作后的日期数据
注意:月份是六月不进七月进,日是15不进16斤
◆ TRUNC
➢ 对日期进行截取 和 和 round 类似,只舍弃,不进位
➢ 转换函数
◆ TO_CHAR(“日期或者数字”,“格式”)
➢ 把日期或者数字转换为字符
◆ TO_NUMBER(“字符内容只能为数字”)
➢ 把字符转换为数
◆ TO_DATE(“日期”,“格式”)
➢ 把字符转换为日期
来源:https://blog.csdn.net/qq_39647739/article/details/100826386