溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Oracle中字符操作函數(shù)有哪些

發(fā)布時間:2022-03-29 10:49:24 來源:億速云 閱讀:106 作者:小新 欄目:編程語言

小編給大家分享一下Oracle中字符操作函數(shù)有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

字符操作函數(shù)

      CONCAT

                   CONCAT函數(shù)連接兩個字符字面值、列或者表達式從而生成一個更大的字字符表達式。語法:CONCAT(s1,s2)

                   select concat('Today is:',SYSDATE) FROM DUAL;

                   CONCAT只能使用兩個參數(shù)

                   select concat('Outer1 ',concat('Inner1',' Inner2')) from dual;

      LENGTH

                   LENGTH函數(shù)返回組成字符串的字符數(shù)??崭?、制表符和特殊字符都被LENGTH函數(shù)計算在內(nèi)。只有一個參數(shù),LENGTH(s)。(制表符算1)

                   select length('ab cd e') from dual;

      LPAD和RPAD

                   LPAD(RPAD)函數(shù)返回給定字符串左(右)邊填充指定數(shù)量的字符后形成的合成字符串。用于填充的字符串包括字符字面值、列值、表達式、空格(默認)、制表符和特殊字符。

                   LPAD和RPAD函數(shù)有三個參數(shù),語法:RPAD(s,n,p)和LPAD(s,n,p)。s表示源字符串,n表示返回字符串的最終長度,p指定用于填充的字符串。

                   select LPAD('abc',6,'*'),RPAD('abc',6,'*') from dual;

      TRIM

                   TRIM函數(shù)從字符值的開頭或結(jié)尾刪除一些字符,從面生成一個更簡短的字符項。

                   TRIM函數(shù)使用的參數(shù)由一個強制組成部分和一個可選組成部分構(gòu)成。語法:TRIM([trailing|leading|both] trimstring from s)。被修整的字符串(s)是強制的。只能指定一個修正字符。

                            TRIM(s)刪除輸入字符串兩邊的空格。

                            TRIM(trailing trimstring from s) 從字符串s的結(jié)尾刪除所有trimstring(如果存在的話)。

                            TRIM(leading trimstring from s) 從字符串s的開頭刪除所有trimstring(如果存在的話)。

                            TRIM(both trimstring from s) 從字符串s的開頭和結(jié)尾刪除所有trimstring(如果存在的話)。

                            select trim(both '*' from '*****Hidden*****'),trim(leading '*' from '*****Hidden*****'),trim(trailing '*' from '*****Hidden*****'),trim(both from '  Hidden   '),trim(trailing from '  Hidden'),trim(leading from 'Hidden   ') from dual;

        RTRIM

                    RTRIM函數(shù)從字符值的結(jié)尾刪除一些字符,從而生成一個更簡短的字符串。
                    語法:RTRIM(string[,trimstring]),被修整的string是必須的,可以刪除多個字符。默認刪除空格。
                    select rtrim('abcd  ') from dual;
                    select rtrim('abcd***','*') from dual;                    select rtrim('abcd*#','*#') from dual;

       LTRIM

                    LTRIM函數(shù)從字符值的開頭刪除一些字符,從而生成一個更簡短的字符串。
                    語法:RTRIM(string[,trimstring]),被修整的string是必須的,可以刪除多個字符。默認刪除空格。
                    select ltrim('  abcd') from dual;
                    select ltrim('***abcd','*') from dual;                    select ltrim('*#abcd','*#') from dual;

      INSTR

                   INSTR函數(shù)確定搜索字符串在給定字符串內(nèi)的位置。它返回數(shù)字位置,在這個位置上,搜索字符串開始第n次出現(xiàn)(相對于指定的起始位置而言)。如果搜索字符串不存在,則返回0.

                   INSTR函數(shù)使用兩個可選參數(shù)和兩個強制參數(shù)。語法:INSTR(source string,search string,[search start position],[nth occurrence])。search start position的默認值是1或者source string的開頭。nth occurrence 的默認值是1或者第一次出現(xiàn)。

                   select instr('1#3#5#7#9#','#') from dual;

                   從左第1個字符往右,返回'#'第1次出現(xiàn)的位置。

                   select instr('1#3#5#7#9#','#',5) from dual;

                   從左第5個字符往右,返回'#'第1次出現(xiàn)的位置。

                   select instr('1#3#5#7#9#','#',3,4) from dual;

                   從左第3個字符往右,返回'#'第4次出現(xiàn)的位置。

                   select instr('1#3#5#7#9#','#',3,10) from dual;

                   從左第3個字符往右,返回'#'第10次出現(xiàn)的位置,沒有找到返回0.

                   select instr('1#3#5#7#9#','#',-1) from dual;

                   從右第1個字符往左,返回'#'第1次出現(xiàn)的位置。

                   select instr('1#3#5#7#9#','#',-1,3) from dual;

                   從右第1個字符往左,返回'#'第3次出現(xiàn)的位置。

                   select instr('1#3#5#7#9#','#',-3,3) from dual;

                   從右第3個字符往左,返回'#'第3次出現(xiàn)的位置。

      SUBSTR

                   SUBSTR函數(shù)從給定源字符串中給定的位置開始,提取指定長度的字符串。如果起始位置大于源字符串的長度,就會返回null。如果從給定起始位置提取的字符數(shù)大于源字符串的長度,返回的部分是從起始位置到字符串結(jié)尾的子字符串。

                   SUBSTR函數(shù)有三個參數(shù),前兩個是強制的。語法:SUBSTR(source string,start position,[number of characters to extract])。要提取的默認字符數(shù)是從start position 到source string 結(jié)尾的字符數(shù)。

                   select substr('1#3#5#7#9#',5) from dual;

                   從從左到右數(shù)第5個字符處開始提取,從左到右提取,一直到源字符串結(jié)尾。

                   select substr('1#3#5#7#9#',5,3) from dual;

                   從從左到右數(shù)第5個字符處開始提取,從左到右提取,提取3個字符。

                   select substr('1#3#5#7#9#',-3,2) from dual;

                   從從右到左數(shù)第3個字符處開始提取,從左到右提取,提取2個字符。

            select substr('1#3#5#7#9#',-3,-2) from dual;

                    空

      REPLACE

                   REPLACE函數(shù)用替換項取代源字符串中出現(xiàn)的所有搜索項。如果替換項的長度與搜索項的長度不同,那么返回字符串的長度與源字符串的長度也不同。如果沒有找到搜索字符串,就會原封不動的返回源字符串。

                   REPLACE函數(shù)有三個參數(shù),前兩個是強制的。語法:REPLACE(source string,search item[,replacement term])。如果省略replacement term參數(shù),就會從source string 中刪除所有出現(xiàn)的search item。

                   select replace('1#3#5#7#9#','#','->') from dual;

                   select replace('1#3#5#7#9#','#') from dual;

以上是“Oracle中字符操作函數(shù)有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI