mod(y,x)取余
select mod(9,2) from dual; ---- 1
round(x,y)四舍五入,trunc(x,y)截取函数,并不会产生进位
1 --四舍五入 , 值为23.4
2 select round(23.39,1) fromdual;3 --截取函数 ,值为23.3
4 select trunc(23.39,1) from dual;
oracle中默认的时间格式DD-MM-YYYY,oracle常用的日期和时间函数
to_char() -- 把日期或者数字转换为字符串
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
to_date() -- 把字符串转换为日期类型
select to_date('2018/7/7','yyyy/mm/dd') from dual;
add_months() -- 在当前日期增加相应月份后的日期,即使两个日期的月份不同,oracle自动换算,转换后的日期几号不变
select add_months(sysdate,3) from dual;
当前日期是2018/7/7,增加3个月之后,日期变为2018/10/7
months_between() -- 两个日期之间的月份数
--2018/1/1到2018/7/7的月份数,值为6
select trunc(months_between(sysdate, to_date('2018/1/1', 'yyyy-mm-dd')))
from dual;
last_day() -- 当前日期所在月份的最后一天
select last_day(sysdate) from dual;
next_day() -- 从当前日期得到未来星期几的日期
select next_day(sysdate,'星期一') from dual;
lower() , upper() , initcap()
1 --全部转化为小写,结果smith
2 select lower('SMitH') fromdual;3 --全部转化为大写,结果SMITH
4 select upper('smITh') fromdual;5 --转换为首字母大写,其余字母小写,结果Smith
6 select initcap('sMiTh') from dual;
length() -- 字符串的长度
select length('smith') from dual; -- 5
concat() -- 字符串拼接函数
select concat('hello ','would') from dual -- hello would
chr() -- 将ASCII码转换为字符
select chr(65) from dual; -- A