1、返回與指定的字符對應的十進制數
select ascii('A') A,ascii('z') a,ascii('12') 一打,ascii(' ') kg from dual;
2、返回與指定十進制對應的字符
select chr(65) A,chr(122) z from dual;
3、連接兩個字符串
select concat('熊大','熊二') constr from dual;--熊大熊二
4、將第一個字符變大寫並返回字符串
select initcap('boat') upperfirst from dual;--Boat
5、將所有字符變成大寫並返回字符串
select upper('boat') upperall from dual t;--BOAT
6、將所有字符變成小寫並返回字符串
select lower('BoaT') lowerall from dual;--boat
7、INSTR(str1, str2, a,b)函數
用法:得到在str1中包含str2的位置。
從左邊開始檢查,開始的位置為a,如果a是一個負數,那麼是從右邊開始進行掃描的,第b次出現的位置將被返回。
a和b都缺省設置為1,這將會返回在str1中第一次出現str2的位置
select instr('zheshigeceshi','sh',-2,1) str from dual;--11 select instr('zheshigeceshi','sh',1,2) str from dual;--11
8、獲取字符串長度
select length('boat') len from dual;--4
9、lpad(str,n,[pad_string])函數
參數str:可以是字符或者參數
參數n:是返回的字符串的長度,如果這個數量比原字符串的長度要短,lpad函數將會把字符串截取成從左到右的n個字符;
參數pad_string:是個可選參數,這個字符串是要粘貼到string的左邊的字符串,如果這個參數未寫,lpad函數將會在string的左邊粘貼空格。
select rpad('boat',10,'*') from dual t;--boat****** select lpad('boat',10,'*') from dual t;--******boat
10、ltrim(x,y) 函數
用法:按照y中的字符一個一個截掉x中的字符,並且是從左邊開始執行的
只要遇到y中有的字符, x中的字符都會被截掉,直到在x的字符中遇到y中沒有的字符為止函數命令才結束,rtrim(y,x)同理
select ltrim('boat','bo') from dual;--at select ltrim('booooobbbbobat','bo') from dual t;--at select rtrim('boat','at') from dual;--bo select rtrim('boaaaaaaaaatttttttaat','at') from dual;--bo
11、substr(string str, int a, int b)函數
參數1:str 要處理的字符串
參數2:a 截取字符串的開始位置(起始位置是0),為負值時表示從尾部開始算起
參數3:b 截取的字符串的長度,如果b超出要處理的字符串的長度,並不會影響返回結果,系統按要處理字符串最大長度返回
如果不用b,則取從a開始的剩余所有字符串
select substr('boatisgood',3,100) subs from dual;--atisgood select substr('boatisgood',3) subs from dual;--atisgood select substr('boatisgood',-3) subs from dual;--ood
12、替換函數
select replace('nba hupu 步行街怎麼沒有了','步行街','BXJ') from dual;--nba hupu BXJ怎麼沒有了