酷知百科網

位置:首頁 > 遊戲數碼 > 電腦

Oracle函數大全之字元型函數

電腦2.8W

Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關係數據庫管理系統。到目前仍在數據庫市場上佔有主要份額。勞倫斯·埃裏森和他的朋友,之前的同事Bob Miner和Ed Oates在1977年建立了軟件開發實驗室諮詢公司(SDL,Software Development Laboratories)。

操作方法

(01)ASCII(x1)【功能】:返回字元表達式最左端字元的ASCII 碼值。【參數】:x1,字元表達式【返回】:數值型【示例】 select ascii('A') A,ascii('a') a,ascii(' ') space,ascii('示') hz from dual;【說明】在ASCII()函數中,純數字的字元串可不用‘’括起來,但含其它字元的字元串必須用‘’括起來使用,否則會出錯。  如果最左端是漢字,只取漢字最左半邊字元的ASCII 碼【互反函數】:chr()

Oracle函數大全之字元型函數

(02)CHR(n1)【功能】:將ASCII 碼轉換爲字元。【參數】:n1,爲0 ~ 255,整數【返回】:字元型【示例】 select chr(54740) zhao,chr(65) chr65 from dual;【互反函數】:ASCII

Oracle函數大全之字元型函數 第2張

(03)CONCAT(c1,c2)【功能】連接兩個字元串【參數】c1,c2 字元型表達式【返回】字元型同:c1||c2【示例】 select concat('010-','88888888')||'轉23' 高乾競電話 from dual;

Oracle函數大全之字元型函數 第3張

(04)INITCAP(c1)【功能】返回字元串並將字元串的第一個字母變爲大寫,其它字母小寫;【參數】c1字元型表達式【返回】字元型【示例】 select initcap('smith abc aBC') upp from dual;

Oracle函數大全之字元型函數 第4張

(05)LOWER(c1)【功能】:將字元串全部轉爲小寫【參數】:c1,字元表達式【返回】:字元型【示例】 select lower('AaBbCcDd')AaBbCcDd from dual;【同類】UPPER()將字元串全部轉爲大寫。

Oracle函數大全之字元型函數 第5張

(06)UPPER(c1)【功能】將字元串全部轉爲大寫【參數】c1,字元表達式【返回】字元型【示例】 select upper('AaBbCcDd') upper from dual;【同類】LOWER()將字元串全部轉爲小寫

Oracle函數大全之字元型函數 第6張

(07)NLS_INITCAP(x[,y])【功能】返回字元串並將字元串的第一個字母變爲大寫,其它字母小寫;【參數】x字元型表達式【參數】Nls_param可選,查詢數據級的NLS設定:select * from nls_database_parameters;例如:指定排序的方式(nls_sort=) 。nls_sort=SCHINESE_RADICAL_M(部首、筆畫)nls_sort=SCHINESE_STROKE_M(筆畫、部首SCHINESE_PINYIN_M(拼音))【返回】字元型【示例】 select nls_initcap('ab cde') "test",nls_initcap('a c b d e','nls_sort= SCHINESE_PINYIN_M') "test1" from dual;返回:Ab Cde, A C B D Eselect nls_initcap('ab cde') "test",nls_initcap('a c b d e','NLS_LANGUAGE=AMERICAN') "test1" from dual;

Oracle函數大全之字元型函數 第7張
Oracle函數大全之字元型函數 第8張

(08)NLS_LOWER(x[,y])【功能】返回字元串並將字元串的變爲小寫;【參數】x字元型表達式【參數】Nls_param可選,指定排序的方式(nls_sort=) 。SCHINESE_RADICAL_M(部首、筆畫)SCHINESE_STROKE_M(筆畫、部首SCHINESE_PINYIN_M(拼音))【返回】字元型【示例】 select nls_LOWER('ab cde') "test",nls_LOWER('a c b d e','nls_sort= SCHINESE_PINYIN_M') "test1" from dual;返回:ab cde,a c b d e

Oracle函數大全之字元型函數 第9張

(09)NLS_UPPER(x[,y])【功能】返回字元串並將字元串的轉換爲大寫;【參數】x字元型表達式【參數】Nls_param可選,指定排序的方式(nls_sort=) 。SCHINESE_RADICAL_M(部首、筆畫)SCHINESE_STROKE_M(筆畫、部首SCHINESE_PINYIN_M(拼音))【返回】字元型【示例】 select NLS_UPPER('ab cde') "test",NLS_UPPER('a c b d e','nls_sort= SCHINESE_PINYIN_M') "test1" from dual;返回:AB CDE,A C B D E

Oracle函數大全之字元型函數 第10張

(10)INSTR(C1,C2[,I[,J]])【功能】在一個字元串中搜尋指定的字元,返回發現指定的字元的位置;【說明】多字節符(漢字、全形符等),按1個字元計算【參數】C1    被搜尋的字元串C2    希望搜尋的字元串I     搜尋的開始位置,默認爲1J     第J次出現的位置,默認爲1【返回】數值【示例】select instr('oracle traning','ra',1,2) instring from dual;返回:9【示例】select instr('重慶某軟件公司','某',1,1),instrb('重慶某軟件公司','某',1,1) instring from dual;返回:3,5

Oracle函數大全之字元型函數 第11張
Oracle函數大全之字元型函數 第12張

(11)INSTRB(C1,C2[,I[,J]])【功能】在一個字元串中搜尋指定的字元,返回發現指定的字元的位置;【說明】多字節符(漢字、全形符等),按2個字元計算【參數】C1    被搜尋的字元串C2    希望搜尋的字元串I     搜尋的開始位置,默認爲1J     第J次出現的位置,默認爲1【返回】數值【示例】select instr('重慶某軟件公司','某',1,1),instrb('重慶某軟件公司','某',1,1) instring from dual;返回:3,5

Oracle函數大全之字元型函數 第13張

(12)LENGTH(c1)【功能】返回字元串的長度;【說明】多字節符(漢字、全形符等),按1個字元計算【參數】C1 字元串【返回】數值型【示例】select length('高乾競'),length('北京市海錠區'),length('北京TO_CHAR') from dual;

Oracle函數大全之字元型函數 第14張

(13)LENGTH(c1)【功能】返回字元串的長度;【說明】多字節符(漢字、全形符等),按2個字元計算【參數】C1 字元串【返回】數值型【示例】select length('高乾競'),lengthB('高乾競') from dual;

Oracle函數大全之字元型函數 第15張

(14)LENGTHC(c1)TH2(c1)TH4(c1)【功能】返回字元串的長度;【說明】多字節符(漢字、全形符等),按1個字元計算【參數】C1 字元串【返回】數值型【示例】 select length('高乾競'),length('北京市海錠區'),length('北京TO_CHAR') from dual;Oracle中的字元函數中,有一類函數是求字元長度的函數,length、lengthB、lengthC、length2、length4幾個函數中比較常用的是length、lengthB。他們的含義分別是:Length函數返回字元的個數,使用定義是給定的字元集來計算字元的個數LENGTHB給出該字元串的byteLENGTHC使用純UnicodeLENGTH2使用UCS2LENGTH4使用UCS4

Oracle函數大全之字元型函數 第16張

(15)LPAD(c1,n[,c2])【功能】在字元串c1的左邊用字元串c2填充,直到長度爲n時爲止【參數】C1 字元串n 追加後字元總長度c2 追加字元串,默認爲空格【返回】字元型【說明】如果c1長度大於n,則返回c1左邊n個字元如果如果c1長度小於n,c2和c1連接後大於n,則返回連接後的右邊n個字元【示例】select lpad('gao',10,'*') from dual;不夠字元則用*來填滿【相似】RPAD()在列的右邊粘貼字元【相反】LTRIM() 刪除左邊出現的字元串

Oracle函數大全之字元型函數 第17張

(16)RPAD(c1,n[,c2])【功能】在字元串c1的右邊用字元串c2填充,直到長度爲n時爲止【參數】C1 字元串n 追加後字元總長度c2 追加字元串,默認爲空格【返回】字元型【說明】如果c1長度大於n,則返回c1左邊n個字元如果如果c1長度小於n,c1和c2連接後大於n,則返回連接後的左邊n個字元如果如果c1長度小於n,c1和c2連接後小於n,則返回c1與多個重複c2連接(總長度>=n)後的左邊n個字元【示例】 select rpad('gao',10,'*a') from dual;rpad('gao',10,'*a') ;【相似】LPAD()在列的左邊粘貼字元【相反】RTRIM() 刪除右邊出現的字元串

Oracle函數大全之字元型函數 第18張

(17)LTRIM(c1,[,c2])【功能】刪除左邊出現的字元串【參數】C1 字元串c2 追加字元串,默認爲空格【返回】字元型【示例】 select LTRIM('   gao qian jing',' ') text from dual;或:select LTRIM('   gao qian jing') text from dual;【相似】RTRIM()刪除右邊出現的字元串【相反】LPAD() 在列的左邊粘貼字元

Oracle函數大全之字元型函數 第19張

(18)RTRIM(c1,[,c2])【功能】刪除右邊出現的字元串【參數】C1 字元串c2 追加字元串,默認爲空格【返回】字元型【示例】 select RTRIM('gao qian jingXXXX','X') text from dual;【相似】LTRIM()刪除左邊出現的字元串【相反】RPAD() 在列的右邊粘貼字元

Oracle函數大全之字元型函數 第20張

(19)REPLACE(c1,c2[,c3])【功能】將字元表達式值中,部分相同字元串,替換成新的字元串【參數】c1   希望被替換的字元或變量 c2   被替換的字元串c3   要替換的字元串,默認爲空(即刪除之意,不是空格)【返回】字元型【示例】select replace('he love you','he','i') test from dual;

Oracle函數大全之字元型函數 第21張

(20)SOUNDEX(c1)【功能】返回字元串參數的語音表示形式【參數】c1,字元型【返回】字元串【說明】相對於比較一些讀音相同,但是拼寫不同的單詞是非常有用的。計算語音的算法:1.保留字元串首字母,但刪除a、e、h、i、o、w、y2.將下表中的數字賦給相對應的字母(1) 1:b、f、p、v(2) 2:c、g、k、q、s、x、z(3) 3:d、t(4) 4:l(5) 5:m、n(6) 6:r3. 如果字元串中存在擁有相同數字的2個以上(包含2個)的字母在一起(例如b和f),或者只有h或w,則刪除其他的,只保留1個4.只返回前4個字節,不夠用0填充示例:soundex('two'),soundex('too'),soundex('to'),他們的結果都是T000   soundex('cap'),soundex('cup'),他們的結果都是C100   soundex('house'),soundex('horse'),他們的結果都分別是H200,H620

(21)SUBSTR(c1,n1[,n2])【功能】取子字元串【說明】多字節符(漢字、全形符等),按1個字元計算【參數】在字元表達式c1裏,從n1開始取n2個字元;若不指定n2,則從第y個字元直到結束的字串.【返回】字元型【示例】 select substr('13088888888',3,8) test from dual;

Oracle函數大全之字元型函數 第22張

(22)SUBSTRB(c1,n1[,n2])【功能】取子字元串【說明】多字節符(漢字、全形符等),按2個字元計算【參數】在字元表達式c1裏,從n1開始取n2個字元;若不指定n2,則從第y個字元直到結束的字串.【返回】字元型,如果從多字元右邊開始,則用空格表示。【示例】select substr('我手機13012345678',4,11),substrb('我手機13012345678',4,11),substrb('我手機13012345678',3,11) test from dual;返回:13012345678, 機13012345,手機1301234

Oracle函數大全之字元型函數 第23張

(23)TRANSLATE(c1,c2,c3)【功能】將字元表達式值中,指定字元替換爲新字元【說明】多字節符(漢字、全形符等),按1個字元計算【參數】c1   希望被替換的字元或變量 c2   查詢原始的字元集c3   替換新的字元集,將c2對應順序字元,替換爲c3對應順序字元如果c3長度大於c2,則c3長出後面的字元無效如果c3長度小於c2,則c2長出後面的字元均替換爲空(刪除)如果c3長度爲0,則返回空字元串。如果c2裏字元重複,按首次位置爲替換依據【返回】字元型【示例】select TRANSLATE('he love you','he','i'),TRANSLATE('重慶的人','重慶的','上海男'),TRANSLATE('重慶的人','重慶的重慶','北京男士們'),TRANSLATE('重慶的人','重慶的重慶','1北京男士們'),TRANSLATE('重慶的人','1重慶的重慶','北京男士們') from dual;返回:i love you,上海男人,北京男人,1北京人,京男士人

Oracle函數大全之字元型函數 第24張

(24)TRIM(c1 from c2)【功能】刪除左邊和右邊出現的字元串【參數】C2 刪除前字元串c1 刪除字元串,默認爲空格【返回】字元型【示例】 select TRIM('X' from 'XXXgao qian jingXXXX'),TRIM('X' from 'XXXgaoXXjingXXXX') text from dual;返回:gao qian jinggaoXXjing【相似】LTRIM()刪除左邊出現的字元串  RTRIM()刪除右邊出現的字元串

Oracle函數大全之字元型函數 第25張