Oracle数据库零散知识04 --- 其常用内置函数

1,数值函数

Select 
abs(-9),--9 绝对值
Mod(5,3),--2 余数
Sign(-9),-- -1 标记
Ceil(9.4),--10
Floor(9.8),--9
Sqrt(100),--10 平方根
Power(2,3),Exp(2),--8  2的3次方幂 e^2 
Log(10,100),Ln(100),--10为底100的对数 2,100的自然对数
Round(45.67,1),round(45.67,-1),--四舍五入 45.7,50
Trunc(45.67,1),trunc(45.67,-1)—截取 45.6,40
From dual;

  

2,字符串函数

Select
Chr(97),--a ASCII码对应默认字符集的字符
Ascii('a'),--97 首字母对应的ascii码
Length('abc'),--字符长度
lengthb('abc'),--字节长度
Substr('abcdef',2,2),substr('abcdef',-2,2),--bc ef 
Substrb('abcdef',2,2),--bc 已字节为单位
Concat('abc','edf'),--abcedf 连接字符串
instr('abcdbrf','b'),Instr('abcdbrf','b',1,2),--2 5 开始位置及查找第几次出现
upper('abc'),lower('Ask'),--大小写
initcap('this is a line'),--首字母的大写
nls_initcap('this is a line','NLS_SORT = SCHINESE_STROKE_M'),--指定字符集的大小写转换
nlssort('thisfgds',' NLS_SORT = SCHINESE_PINYIN_M'),--指定字符集的排序
replace('i can find yisdf','isdf','ou'),--替换 
rpad('line',10,'*'),lpad('line',10,'*'),--左右填充
trim(leading 'a' from 'abca'),--bca 前去除,注意是单个字符去除 同理trailing both
ltrim('abcdefcba','abfce') -- defcba 挨个字符查找去除 右去除 Rtrim 
from dual

  

3,日期函数

Select
sysdate,--29-OCT-15 系统当前时间
systimestamp,--29-OCT-15 03.32.29.105000 PM +08:00 系统时间戳 精确到秒以下
last_day(sysdate),--31-OCT-15本月最后一天日期
next_day(sysdate,'wednesday'),--04-NOV-15下一个星期几的日期
add_months(sysdate,2),--29-DEC-15添加月份
--months_between(date1,date2)
extract(year from sysdate),--2015 提取日期中的部分
round(sysdate,'month'),--01-NOV-15四舍五入
trunc(sysdate,'month')-- 01-OCT-15 截取
from dual
/

  

4,转换函数

Select
bin_to_num(1,1,1),--7 二进制转十进制 
cast(123 as varchar2(4)),cast('123' as integer),--123 类型转换
--to_number('1234.7889','9999.999'),--字符 转格式数字
to_char(1234.7889,'9,999.999'),--数字转格式数字
to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),--日期格式
to_date('2015-09-09','yyyy-mm-dd'),--字符转日期
sysdate + 1-- 加的是天数
from dual
/

  

5,null函数

Select
coalesce(null,9,null,8),--9 从左到右返回第一个不为null的值
--lnnvl(sno < 200)--此条件等价为sno >= 200的条件
nvl(null,0),nvl(6,0),--0 6 第一个值为空,返回第二个值
nvl2(null,1,2)--2 第一个值为空,返回第三个值,否则返回第二个值
from dual
/

  

6,集合函数

Avg() sum() count() max() min()

7,表达式匹配函数

Decode 类似于case

Select
decode(6,
1,'one',
2,'two',
3,'three',
'no data') -- no data 没有值匹配返回
from dual
/

  

原文地址:https://www.cnblogs.com/whytohow/p/4920846.html