Oracle(内置函数)

1.转换函数 to_number to_char to_date

#to_number 转换数值型
select to_number('1')+1 from dual;

#to_char 转换字符串型
select to_char(1) from dual;

#to_date 转换日期 sysdate:获取系统时间
select to_char(sysdate,'yyyy-mm-dd hh:mi:ss') from dual;

2.日期函数
--add_months在指定的日期上新增或者减少指定的月份
select add_months(sysdate,2) from dual;

--months_between求月份差
select months_detween(sysdate,to_date('2020-12-12','yyyy-mm-dd'))from dual;

--next-day获取当前时间的后面的星期二是哪一天
next_day(sysdate,'星期二');

--last-day获取当前时间的最后一天是哪一天
last_day(sysdate);

--extract 单独的获取日期的年份,月份,日期.
extract(year from sysdate);
extract(month from sysdate);
extract(day from sysdate);

示例:分别统计每个月份入职(hirdate)的员工有多少人
select(month from hirdate) group by extract(month from hiredate)

--round 四舍五入以天为单位
--yyyy-mm-dd hh24:mi:ss 24小时
select round(to_date('2020-02-20 12:00:01',‘yyyy-mm-dd hh24:mi:ss’)) from dual;\\结果21

--trunc 截断日期
trunc(to_date('2020-02-20 12:00:01',‘yyyy-mm-dd hh24:mi:ss’))

3字符串函数
length 求字符串的长度
ltrim和rtrim 去除两端的空格
length(rtrim('    helloworld'))\\结果:10

replace 替换
replace(‘zz is a nice man’'zz','邓炎康');

lpad|rpad 在左右两端填充指定的内容

upper|lower 转换大小写

cha|ascii 数值与字符的转换
select chr(97) from dual;\\结果:a;

instr从目标字符串的指定位置开始查找指定字符的下标

substr从指定的位置开始截取后面几位.

decode('sb',‘nb’,'1','ab','2','sb','3')
如果给sb的第一个值是1就输出1,
如果给sb的第二个值是2就输出2,
如果给sb的第三个值是3就输出3,

4数学函数
abs(-1) 绝对值
ceil(12.001) 向上取整 //结果:13
floor(12.99999) 向上取整 //结果:12
sprt(4) 开平方//结果:2
prwer(2,3) 幂//结果:8
round(12.89,1) 四舍五入//结果:12.9
mod(10,3) 取模//结果:1

判断正负:
sign(100)//结果:-1
sign(-100)//结果:1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值