oracle简单函数

表内容

在这里插入图片描述

oracle字符串相关函数

lpad()左补齐 rpad()右补齐

使用指定的字符在字符的左边(右边)填充

select lpad(id,6,'0') from teacher;

在这里插入图片描述

upper()

返回字符串的大写格式

select upper(name) from teacher;

在这里插入图片描述

lower()

返回字符串的小写格式

select lower(name) from teacher;

在这里插入图片描述

initcap()

返回字符串的首字母大写格式

select initcap(name) from teacher;

在这里插入图片描述

length()

-返回字符串长度

select id,length(id),name,length(name) from teacher;

在这里插入图片描述

substr()

字符串截取 第一个数字是数字截取位(注意下标从1开始,与java区别) ,第二个数字是截取位数

select id,name,pwd,substr(name,2,3) from teacher; --从第2位开始,截取3位数字
select id,name,pwd,substr(name,-1,3) from teacher; ---1位(倒数第一位开始)开始,截取三位(不是反向截取,所以只有1位)
select id,name,pwd,substr(name,-2,3) from teacher; --倒数第一位是-1,倒数第二位是-2

在这里插入图片描述

instr()

查找字符串第一次出现指定字符或字符串的下标位置,可以指定范围,没有返回0

--instr(指定字符串,查询内容)
select name,instr(name,'a') from teacher;
select name,instr(name,'a',3,6)from teacher;--返回从第三位到第六位中a字符串第一次出现的位置

在这里插入图片描述

reverse()

反转字符串

select name,reverse(name) from teacher;

在这里插入图片描述

concat()

字符串拼接

select name,concat('hello:',name) from teacher;

在这里插入图片描述

trim()、ltrim()、rtrim()

去两端空格trim()

select length(' hello java ')before,trim(' hello java '),
       length(trim(' hello java '))after from dual;

去左侧空格ltrim()
去右侧空格rtrim()
在这里插入图片描述

replace()

字符串替换

select name,replace(name,'a','x') from teacher;--将所有的a替换为x

在这里插入图片描述

regexp_replace()

用正则表达式替换字符串

select name,regexp_replace(name,'a.g','x')from teacher;

在这里插入图片描述

oracle数值类型相关函数

round()

四舍五入函数

select round(123.456,2) from dual; ---123.46四舍五入,保留两位小数
select round(123.456) from dual; ---123四舍五入不保留小数

在这里插入图片描述

ceil()、floor()

向上取整函数与乡下取整函数

select ceil(123.456) from dual;  --124 向上取整
select floor(123.456) from dual;  --123 向下取整

在这里插入图片描述

mod()

求模函数

select mod(32,7) from dual; --4

在这里插入图片描述

abs()

绝对值函数

select abs(128) from dual; --128

在这里插入图片描述

sign()

判断数值正负或0,整数返回1,负数返回-1,0返回0

select sign(0) from dual; --0
select sign(12) from dual; --1
select sign(-12) from dual; -- -1

在这里插入图片描述

sqrt()

开平方根

select sqrt(4) from dual; --2

在这里插入图片描述

trunc()

保留几位小数

select trunc(1234.5678,3) from dual; --1234.567

在这里插入图片描述

to_char()

将其他数据类型转换为字符串,可以是数值类型,也可以是日期时间类型

select to_char(1234.453,'0,000.00')数字类型,
       to_char(sysdate,'YYYY-MM-dd HH24:mi:ss')时间类型 from dual;

–如果转后的字符串小数部分少于原有的位数,进行四舍五入,如果整数部分少于原有位数,则乱码
在这里插入图片描述

oracle时间类型相关函数

sysdate

获取当前系统日期和时间

select sysdate from dual;

在这里插入图片描述

systimestamp

获取更精确的系统日期和时间,加上时区

select systimestamp from dual;

在这里插入图片描述

add_month()

增加指定个月

select d1,add_months(d1,1) from t_date where id=1;

在这里插入图片描述

last_day()

返回当月最后一天

select d1,last_day(add_months(d1,1)) from t_date where id=1;

在这里插入图片描述

trunc()

日期截取(啥都不填默认按天)

select trunc(sysdate),sysdate from dual;
select trunc(sysdate,'yyyy'),sysdate from dual;

在这里插入图片描述

to_timestamp()

字符串转换为日期

select to_timestamp('2022-1-20 14:20:30','yyyy-MM-dd HH24:mi:ss')after from dual;

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值