Oracle单行函数

Oracle的单行函数包括:
字符串函数、数值函数、日期函数、转换函数、通用函数

字符串函数

UPPER(列或字符串):转成大写函数
LOWER(列或字符串):转成小写函数
INITCAP(列或字符串):把字符串的第一个字母转换成大写
LENGTH(列或字符串):获取字符串长度
REPLACE(列或字符串,查找匹配的内容,替换的新内容):字符串替换

#将名字里A替换成B
select replace(name,upper('a'),'B') from User;
#消除空格
select repalce('hello world',' ','') from User; ##Oracle会识别空格
SUBSTR(列或字符串,开始点)或SUBSTR(列或字符串,开始点,结束点):截取字符串

数值函数

四舍五入操作

  • 保留的位数正数的时候对小数点之后的内容进行四舍五入
  • 负数是对小数点之前的那一位进行之后的内容进行四舍五入

ROUND(列或者数字)
ROUND(列或者数字,保留的位数)

截取小数

  • 小数位的逻辑和四舍五入的逻辑一样的
  • 截取之后的内容舍去

TRUNC(列或者数字)
TRUNC(列或者数字,小数位)

求余
MOD(列或者数字,列或者数字)
MOD(10,3)结果是1

日期函数

Oracle提供了一个虚表 dual (可用来查看用户、调用系统函数(也可以直接获取)、操纵序列、作为计算器)

#获取当前时间及其时间戳
select sysdate,systimestamp from dual;

#获取明天的时间
select sysdate+1 from dual;

#获取天数 
select name,sysdate-date from user;

#获取月数
select name,MONTHS_BETWEEN(system,date) from user;
#增加月数 获取下个月的日期
select ADD_MONTHS(sysdate,1) from dual;
#获取当前月的最后一天的日期
select LAST_DAY(sysdate) from dual;

#获取年数
select name,TRUNC(MONTHS_BETWEEN(system,date)/12) years from user;

#计算下一个周二的日期
select NEXT_DAY(sysdate,'星期二') from dual;

格式转换函数

转字符串函数
TO_CHAR(列或日期或数字)
TO_CHAR(列或日期或数字,转换格式)

#格式化日期(返回结果是字符串 而不是日期)
select TO_CHAR(SYSDATE,'yyyy-mm-dd'),TO_CHAR(SYSDATE,'yyyy-mm-dd hh24:mi:ss') from dual;

#查询二月份的员工
select * from user where TO_CHAR(date,'mm') = '02';

#将数字 按照货币的格式进行字符串输出
select  TO_CHAR(123456789,'l999,999,999,999,999') from dual;

转日期函数
可以将字符串转换成日期类型

select TO_DATE('1998-09-19','yyyy-mm-dd') from dual;

转数字函数
可以将字符串转换成数字

select TO_NUMBER('123') from dual;

通用函数

空值替换
NVL(列或null,为空的默认值)
如果列上的内容不是null,则使用列的数据;如果为null,则使用默认值。

select nvl(name,'user')from user;

多值判断(类似与switch)
decode (列,匹配内容,显示内容 …)

select decode(type,'root','管理员','user','普通用户');

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值