Oracle 函数体系

来源:互联网 发布:艾欧尼亚钻石水平 知乎 编辑:程序博客网 时间:2024/05/21 23:31

字符类函数
1.ascii chr 前者返回一个字符的ASCII值,后者将一个ASCII值转换为字符
2.concat(s1,s2) 将字符串s2连接在s1的后面 如果s1为null 则返回s2 反之亦然
3.initcap(s) 将一个字符串的首字母大写
4.instr(s1,s2,[i],[j]) 方括号包起来表示可有可无,i表示从第几个字符开始查询,j表示第几次出现的位置,但是无论从哪开始查,如果有,就是从头开始查询,从1开始

select instr('oracle 11g','1',3,2) abc from dual;结果:9

5.length(s) 返回字符串的长度,如果字符串为null,则返回null;
6.lower(s) and upper(s) 前面是返回s的小写形式 后面返回s的大写
7.ltrim(s1,s2),rtrim(s1,s2),trim(s1,s2)函数

select ltrim('####East####'),rtrim('East   '),trim('#' from '####East####') from dual;East####, East , East

8.replace(s1,s2[,s3]) 使用s3替换所有在s1中出现的s2字符串,s3默认为空值
9.substr(s,i,[j]) 字符串s从第i个位置开始截取长度为j的子字符串,如果省略参数j,则直接截取到尾部
10.lpad(s1,i,s2) 将s1变成i长度,左边用s2填充。
数字函数
1.ceil 返回大于或等于数值n的最小整数,适合一些比较运算,florr(n)与其相反

select ceil(7.3) from dual;8

2.round(n1,n2) n1为小数 ,返回n2个位数,四舍五入
3.power(n1,n2) 该函数返回n1的n2次方
4.trunc(n1,n2) 截取,不四舍五入,
日期和时间类函数
1.sysdate() 返回系统当前日期
2.add_months(d,i) 返回日期d加上i个月之后的效果
3.extract(i from j) i表示需要截取的内容,可以使day,month,year j表示年月日
转换类函数
1.to_char(x,’format’) 将时间转换为字符 yyyy-mm-dd hh24:mi:ss;
2.to_date(x,’format’) 将字符串转换为时间
3.nvl(A,B) 如果A为空,则返回B
4.nvl2(A,B) 如果A不为NULL,则返回B
5.nvllif(A,B) 如果A和B相等返回NULL
6.coalesce(…) 返回第一个非空值
聚合类函数
1.case这里写图片描述
2.decode 这里写图片描述
3.if
if<布尔表达式> then pl/sql或者sql语句
else if <布尔表达式> then 其他语句
else 其他语句
end if
4.循环
loop
要执行的语句
exit when<条件语句>
end loop;
while <布尔表达式> loop
要执行的语句
end loop;
for 计数器 in[REVERSE] 下限..上限 LOOP
要执行的语句;
end LOOP;

0 0