Oracle常用函数笔记

一、字符函数

1.dual 临时表
oracle中的临时变量表,此表只返回第一行第一列
例如:select sysdate from dual
输出:2014-6-9 11:20:39

2.Initcap函数
格式:Initcap(str)
将传入的字符的第一个变成大写,其他位置字符变成小写
例如:select initcap('aBcD') from dual;
输出:Abcd

3.Concat函数,类似于sql server中的+
格式:Concat(str)
链接2个字符串为一个整体,
例如:
Select concat('a','b') from dual;或者 Select 'a'||'b' from dual;
输出:ab

4.Substr函数,类似于sql server中的Substring
格式:Substr(str,startPosition,length) 截取str,从startPosition位置开始,截取length长度个字符,
如果startPosition为负数,则指从倒数第startPosition开始截取length长度个字符

Substr(str,startPosition) 截取str,从startPosition位置开始,如果startPosition为负数,则指从倒数第startPosition开始


例如:select substr('123456789',2) from dual
输出:2

例如:select substr('123456789',2,2) from dual
输出:23

例如:select substr('123456789',-3,2) from dual
输出:78

5.Length函数,类似于sql server中的len
格式: Length(str)
例如:select length('123456789') from dual
输出:9

6.Replace函数,类似于sql server中的replace
格式:replace(sourceStr,oldstr,newstr)
例如:select replace('abcde','a','1') from dual
输出:1bcde

7.Instr函数,类似于sql server中的indexof
格式:Instr(str,childstr) 返回字符串str出现childstr的首个位置
例如:select instr('abcdea','a') from dual
输出:1

8.LPad函数,从左侧开始填充
格式:lpad( string, padded_length, [ pad_string ] )
参数说明:
string
准备被填充的字符串;
padded_length
填充之后的字符串长度,也就是该函数返回的字符串长度,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的n个字符;
pad_string
填充字符串,是个可选参数,这个字符串是要粘贴到string的左边,如果这个参数未写,lpad函数将会在string的左边粘贴空格。
例如:select lpad('haha',8,'*') from dual
输出:****haha

9.Rpad函数,从右侧开始填充
格式:rpad(string,padded_length,[pad_string])
参数:
string 表示:被填充的字符串
padded_length 表示:字节的长度,是返回的字节长度的字符串,如果这个数量比原字符串的字节长度要短,rpad函数将会把字符串截取成从左到右的n个字符;如果正好是中文要被截断,那么这个中文返回的是空格。如:rpad('函数',3) ----返回的是'函 '。
pad_string 是个可选参数,这个字符串是要粘贴到string的右边,如果这个参数未写,rpad函数将会在string的右边粘贴空格。
例如:select rpad('haha',8,'*') from dual
输出:haha****

10.Trim函数:去除首尾空格,类似与SQL SERVER中的LTrim和RTrim的结合使用
格式:Trim(str)
例如:select trim(' haha ') from dual
输出:haha

(未完,持续补充中...)

原文地址:https://www.cnblogs.com/guanjie20/p/3792777.html