1.在字符串类型中的单值函数
lower:全部转换成小写
upper:全部转换成大写
substr:截取子串
concat:字符串拼接
nvl:处理空值
initcap:首字母大写 其余字母小写
length:字符串长度
注:dual 哑表 满足select语法结构
select lower('sql oracle') from dual;
select sysdate from dual; //打印当前日期
2.在number类型的单值函数
round:四舍五入
select round(45.523,2) from dual; //45.52
select round(45.523) from dual; //46
select round(45.523,-1) from dual; //50
trunc:只舍不取
select trunc(45.523) from dual; //45
select trunc(45.523,-1) from dual; //40
mod:取余
select mod(1500,400) from dual; //300
3.在日期类型中的单值函数
在更改日期类型时最好将会话(session)设置为英文模式
(alter session set nls_date_language=english; //设置会话语言)
months_between:俩个日期直接相差的月数
add_months:在某个日期加上月数之后的日期
next_day:即将到来的星期几的日期
last_day:当前日期的月份的最后一天
round:四舍五入 注:对于month 15舍16进 ;对于year 6舍7进
trunc:只舍不取
4.转换函数:转换数据类型
to_char
把日期类型转换成字符串类型 sysdate 默认格式DD-MON-YY
select to_char(sysdate,'YYYY-MM-DD hh24-mi-ss PM') time
from dual;
//2020-09-02 15-07-24 PM
把数字类型转换成字符串类型
select to_char(salary,'fm$999,999.00') from s_emp;
select to_char(salary,'L999,999.00') from s_emp;
注:fm去掉前面多余的空格或0
L显示当地货币的符号
,用来分割
.小数点
位数不够不能正常显示
0:不足位会自动补位
9:不足为不会自动补位
to_number
把字符串类型转换为日期类型
select to_number('a') from dual;
to_date
把字符串转换成日期类型
//默认日期格式
select to_date('09-JUN-20') "date" from dual;
//不是默认的日期格式 指定日期格式
select to_date('2020-09-20','yyyy-mm-dd') from dual;
例: 查询全名 全名大写 first_name长度为6 全名降序
select upper(last_name||','||first_name) name
from s_emp
where length(last_name)=6
order by name DESC;
文章来源: 博客园
- 还没有人评论,欢迎说说您的想法!