Oracle常用函数
- 字符函数
lower(cahr):将字符串转换为小写的格式
upper(char):将字符串转化为大写的格式
length(char):返回字符串的长度
substr(char,m,n):m 截取字符串开始的位置(注:当m等与0或1时,都表示从第一位开始) n 要截取的字符串的长度
substr(char,m):从m个字符开始截取后面所有的字符串
replace(char1,search_string,replace_string) 原串,被替换字符串,替换字符串
instr(c1,c2,I,j):
- 数学函数
数学函数的输入参数和返回值的数据类型 都是数字类型。
数学函数包括cos,cosh,exp,ln,log,sin,sinh,sqrt,tan,tanh,acos,asin,atan,round等。
Round(n,[m]):该函数用于执行四舍五入,
如果省掉m,则四舍五入到整数。
如果m是正数,则四舍五入到小数点的m位后。
如果m是负数,则四舍五入到小数点的m位前。
Floor(n):返回小于或是等与n的最大整数。
- 日期函数
日期函数用户处理date类型的数据。默认情况下日期格式是dd-mon-yy
- sysdate返回系统时间
- add_months(times,months)函数可以得到某一个时间之前或之后n个月的时间。
3、last_day(d):返回指定日期所在月份的最后一天
- 转换函数
To_cahr()函数。
To_date()函数。
- sys_context()系统函数
- REGEXP_SUBSTR(String, pattern, position, occurrence, modifier)
该函数的作用的是,用正则表达式,把一个字段中多个值,转化后以多行的形式展示出来。
__srcstr :需要进行正则处理的字符串
__pattern :进行匹配的正则表达式
__position :起始位置,从第几个字符开始正则表达式匹配(默认为1)
__occurrence :标识第几个匹配组,默认为1
__modifier :模式('i'不区分大小写进行检索;'c'区分大小写进行检索。默认为'c'。)
比如,今天我遇到的问题,一个字段里保存了多个值,以逗号分隔,使用该函数之后就变成了多行了。
select regexp_substr((t1.columA), '[^,]+', 1, ROWNUM) from table t1;