溫馨提示×

溫馨提示×

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

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

Oracle單行函數(shù)之字符函數(shù)

發(fā)布時(shí)間:2020-07-04 18:22:13 來源:網(wǎng)絡(luò) 閱讀:303 作者:你瞅啥Zz 欄目:關(guān)系型數(shù)據(jù)庫

本次主要總結(jié)了以下字符函數(shù)的作用及使用方法:


函 數(shù)說 明
ASCII返回對應(yīng)字符的十進(jìn)制值
CHR給出十進(jìn)制返回字符
CONCAT拼接兩個(gè)字符串,與 || 相同
INITCAT將字符串的第一個(gè)字母變?yōu)榇髮?/span>
INSTR找出某個(gè)字符串的位置
INSTRB找出某個(gè)字符串的位置和字節(jié)數(shù)
LENGTH以字符給出字符串的長度
LENGTHB以字節(jié)給出字符串的長度
LOWER將字符串轉(zhuǎn)換成小寫
LPAD使用指定的字符在字符的左邊填充
LTRIM在左邊裁剪掉指定的字符
RPAD使用指定的字符在字符的右邊填充
RTRIM在右邊裁剪掉指定的字符
REPLACE執(zhí)行字符串搜索和替換
SUBSTR取字符串的子串
SUBSTRB取字符串的子串(以字節(jié))
SOUNDEX返回一個(gè)同音字符串
TRANSLATE執(zhí)行字符串搜索和替換
TRIM裁剪掉前面或后面的字符串
UPPER將字符串變?yōu)榇髮?/span>
NVL以一個(gè)值來替換空值


1、ASCII(<xxx>)

<xxx>是字符串,返回與指定的字符對應(yīng)的十進(jìn)制數(shù)。

SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual;

     A      a ZERO SPACE

---------- ---------- ---------- ----------

65     97     48     32

2、CHR(n])

給出整數(shù),返回對應(yīng)字符。如:

SQL> select chr(65) chr65 from dual;

 C

 -

 A

3、CONCAT(<c1>,<c2>)

返回字符串c1與字符串c2合并后的值。例如:

SQL> select concat('010-','8801 8159') from dual;

CONCAT('01

-----------------

010-8801 8159

4、INITCAP(<c1>)

返回字符串c1 并第一個(gè)字母變?yōu)榇髮?。例如?/span>

SQL> select initcap('simth') upp from dual;

UPP

-----

Simth

5、INSTR(<c1>,<c2>[,<I>[,<j>] ] )

在一個(gè)字符串中搜索指定的字符,返回發(fā)現(xiàn)指定的字符的位置。

C1: 被搜索的字符串

C2: 希望搜索的字符串

I: 搜索的開始位置,缺省是1

J: 出現(xiàn)的位置,缺省是1。

SQL> SELECT INSTR ('Oracle Training', 'ra', 1, 2) "Instring" FROM DUAL;

 Instring

----------

        9

6、INSTRB(<c1>,<c2>[,<I>[,<j>] ] )

除了返回的字節(jié)外 ,與INSTR 相同,

7、LENGTH( <c> )

返回字符串 c 的長度。

SQL> select name,length(name),addr,length(addr),sal,length(to_char(sal)) from nchar_tst;

NAME LENGTH(NAME) ADDR      LENGTH(ADDR) SAL LENGTH(TO_CHAR(SAL))

------ ------------ ---------------- ------------ ---------- ----------------

張五一      3        北京市海淀區(qū)         6         99999.99    8

8、LENGTHB( <c> )

以字節(jié)返回字符串的字節(jié)數(shù)。

SQL> select name,lengthb(name),length(name) from nchar_tst;

NAME   LENGTHB(NAME) LENGTH(NAME)

------ ------------- ------------

張五一              6            3

9、LOWER ( <c> )

返回字符串并將所有字符變?yōu)樾憽?/span>

SQL> select lower('AaBbCcDd') AaBbCcDd from dual;

AABBCCDD

--------

aabbccdd

10、UPPER( <c>)

與 LOWER 相反,將給出字符串變?yōu)榇髮?。如?/span>

SQL> select upper('AaBbCcDd') AaBbCcDd from dual;

AABBCCDD

--------

AABBCCDD

11、RPAD和LPAD

RPAD(string,Length[,'set'])

LPAD(string,Length[,'set'])

      RPAD在列的右邊用特定的字符補(bǔ)齊;

      LPAD在列的左邊用特定的字符補(bǔ)齊。

例1:

SQL>select   RPAD(City,35,'.'),temperature    from weather;

        RPAD(City,35,'.')            temperature

        -------------------------- ----------------

           CLEVELAND......                    85

           LOS ANGELES..                     81

          .........................

        (即不夠35個(gè)字符用'.'補(bǔ)齊)

12、LTRIM(左截?cái)?RTRIM(右截?cái)啵?/span>

LTRIM (string [,’set’])

Left TRIM (左截?cái)?刪去左邊出現(xiàn)的任何set 字符。

RTRIM (string [,’set’])

Right TRIM (右截?cái)?刪去右邊出現(xiàn)的任何set 字符。

例1:

SELECT RTRIM (‘Mother Theresa, The’, ‘The’)  FROM DUAL;

RTRIM (‘M

---------------

Mother Theresa,

13、SUBSTR Substr(string,m[,n]) 截取字符串函數(shù)

substr("ABCDEFG", 0); //返回:ABCDEFG,截取所有字符

substr("ABCDEFG", 2); //返回:CDEFG,截取從C開始之后所有字符

substr("ABCDEFG", 0, 3); //返回:ABC,截取從A開始3個(gè)字符

substr("ABCDEFG", 0, 100); //返回:ABCDEFG,100雖然超出預(yù)處理的字符串最長度,但不會影響返回結(jié)果,系統(tǒng)按預(yù)處理字符串最大數(shù)量返回。

substr("ABCDEFG", -3); //返回:EFG,注意參數(shù)-3,為負(fù)值時(shí)表示從尾部開始算起,字符串排列位置不變。

14、SUBSTRB(string,m[,n])

對字串(或字段),從m字節(jié) 開始,連續(xù)取 n個(gè)字節(jié)并返回結(jié)果,如果沒有指n則一直取到尾。

15、REPLACE (‘string’ [,’string_in’,’string_out’])

String: 希望被替換的字符串或變量。

String_in: 被替換字符串。

String_out: 要替換字符串。

SQL> select  replace ('111222333444','222','888') from dual;

REPLACE('111

--------------------

111888333444


向AI問一下細(xì)節(jié)

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

AI