学习回顾oracle系统函数(2)

来源:互联网 发布:护眼台灯推荐知乎 编辑:程序博客网 时间:2024/06/06 04:02

11、内部统计函数。
avg(value):计算平均值,它的参数来自它所作用的若干行。
stddev(value):返回它所作用的若干行作为参数的标准差。
variance(value):返回它所作用的若干行作为参数的协方差。

12、四舍五入函数和截取函数
四舍五入函数round(value, [scale])

select round(123.26) from dual

结果
123

select round(123.26, 1) from dual

结果
123.3

截取函数trunc(value, [scale])

select trunc(123.26) from dual

结果
123

select trunc(123.26, 1) from dual

结果
123.2

求最大整数floor(value) 等同于 trunc(value)
求最小整数cell(value)等同于round(value)

13、求最大或最小值
max(value)和min(value)
返回它所作用的若干行作为参数最大值、最小值。

14、更替null
nvl(expr1,expr2):expr1位NULL,返回expr2;不为NULL,返回expre1。类型要一致
nvl2(expr1, expr2, expr3):expr1不为NULL,返回expr1;为NULL,返回expr3。expre2和expre3类型不同的话,expre3会转换为expr2的类型。

select nvl(123.26, 1) from dual

结果
123.26

select nvl(null, 1) from dual

结果
1

15、统计函数(count)
count函数用于统计返回结果的记录数。

select count(*) from users

结果
273
配合distinct的应用
count(distinct value)

select count(user_roles) from users

结果
273
结果为所有user_roles字段不为null

16、chr函数
chr函数将参数给定的整数转换为需要的字符

select chr(48)  from dual;

结果
‘0’

17、连接两个字符串(concat)

select concat('0663-','322344')||' 不是我家里的电话'  from dual;

结果
0663-322344 不是我家里的电话

18、查找字符串的子串(instr)
用法
instr(srcstr, dststr, start, end)
其中:
srcstr是要被搜索的字符串
dststr是希望搜索的字符串
start:搜索的起始位置,默认为1
end:默认出现的位置。

select instr('123456', '45', 1,1)  from dual;

结果
4

select instr('123456', '45', 1,10)  from dual;

结果
0

select instr('123456', '45')  from dual;

结果
4

19、获取绝对值(abs)

select abs(-100)  from dual;

结果
100

20、取余数(mod)
用法:
mod(n1, n2)
返回n1除以n2的余数。

select mod(123,10)  from dual;

结果
100

原创粉丝点击