select 1 from dual;
select upper('laOwang') as name from dual;--小写变大写并命别名,结果为LAOWANG
select lower('LAOWANG') as name from dual;--大写变小写,结果为laowang
select initcap('laowang') as name from dual;--首字母大写,结果为Laowang
select concat('laowang','nihao') from dual;--拼接,结果为laowangnihao
select 'laowang'||'nihao' from dual;--拼接,结果为laowangnihao
select initcap('laowang'||'nihao') as name from dual;拼接并首字母大写,结果为Laowangnihao
select substr('hello',1,3) from dual;截取,结果为hel
select length('hello') from dual;--获取字符串长度,结果为5
select replace('hello','1','x') name from dual;--替换,结果为xello
select round(12.56) num from dual;--四舍五入,结果为13
select round(12.56,2) num from dual;--四舍五入保留两位,结果为12.56
select trunc(12.56) num from dual;--去掉小数,结果为12
select trunc(12.567,2) num from dual;--保留两位小数并去掉多余的小数,结果为12.56
select mod(100,3) name from dual;--取余结果为1
select sysdate from dual;--查询当前时间
select trunc((sysdate - hiredate)/7) from emp;--查询员工来公司多少周了,小数去掉
select trunc(months_between(sysdate,hiredate)) from emp;--查询两个日期之间隔了多少个月,前边日期减后边日期,并去除小数
select add_months(sysdate,12) from dual;--在当前日期加入12个月。
select next_day(sysdate,'星期一') from dual;--查询下一个星期一。
select last_day(sysdate) from dual;--查询当月最后一天。
转换函数:
yyyy 年
MM 月
dd 日
HH 时 HH12 十二进制时间 HH24 二十四进制时间
mi 分
ss 秒
'fmyyyy-MM-dd' 可以去掉06前边的0.
to_char() 字符串转换函数,可以拆分当前时间。
to_number() 数值转换函数
to_date() 时间转换函数
select ename,to_char(hiredate,'yyyy') 年,to_char(hiredate,'MM')月,to_char(hiredate,'dd') 日 from emp; 拆分当前时间。 --可以用to_cahr拆分日期。
select to_char(sysdate,'yyyy-MM-dd HH24;mi;ss') from dual;--获取当前时间,24小时格式。
select to_char(sal,'99,999') from emp;--给数字格式化,9代表一个数字。
select to_char(sal,'L99,999') from emp;--L代表本地货币标识,$美元标识。
select to_number('10') from dual;--把字符串转换成日期,注意 '' 中格式必须为数字,其他无效
select to_date('1995-10-12','yyyy-MM-dd') from dual;--可以把字符串数据转换成日期类型