substr(string,start,length)
string - 指定的要截取的字符串;
start - 必需,规定在字符串的何处开始 正数 - 在字符串的指定位置开始 负数 - 在从字符串结尾的指定位置开始 0 - 在字符串中的第一个字符处开始,
length - 可选,指定要截取的字符串长度,缺省时返回字符表达式的值结束前的全部字符。
!substrb用法与substr相同,但是为按位截取
lpad(string,n,[pad_string])
string - 原字符串;
n - 返回字符串的总长度,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的n个字符。如果比原字符串长,那么在string左边添加[pad_string]字符;
pad_string - [可选参数] 这个字符串是要粘贴到string的左边。若省略,lpad将会在string的左边粘贴空格。
示例:lpad(‘tech’, 2); 将返回’te’ 、 pad(‘tech’, 8, ‘0’); 将返回’0000tech’
按字符截取字符串,常用语特殊格式字符串中寻找需要子串:instr。下面为对应API
instr( string1, string2, start_position,nth_appearance )
string1 - 源字符串,要在此字符串中查找
string2 - 匹配字符串,要在string1中查找的字符串
start_position - [可选参数] 从string1的哪个位置开始查找。若省略,默认为1。若参数为正,从左到右检索。若为负,从右到左,返回要查找的字符串在源字符串中的开始索引
nth_appearance - [可选参数] 需要查找第几次出现的sting2。若省略,默认为1。若为负,系统会报错。
判空函数 nvl(string1,string2)。 如果sting1空,则返回string2
to_date()、to_char(string,’YYYY-MM-DD’)、to_timestamp()、to_number()、trim()、lower()、upper()、ascii()、chr()
保留两位小数:cast(colume as number(10,2))
分支判断函数 decode(value,if1,then,if2,then,….,else)。表示如果value 等于if1时,DECODE函数的结果返回then1,…,如果不等于任何一个if值,则返回else。
转意函数 escape,当转义符置于通配符之前时,该通配符就解释为普通字符。
ESCAPE ‘escape_character’ 允许在字符串中搜索通配符而不是将其作为通配符使用。escape_character 是放在通配符前表示此特殊用途的字符。
select * from a WHERE name LIKE ‘%aa/%bb%’ ESCAPE ‘/‘
P.S:第一个和最后一个%作为通配符,中间的%作为普通字符。
q操作符,原样输出。 示例: select q’#Oracle’s quote operator#’ from dual;