字元處理函式
字元處理函式
這些函式全都接收的是字元族型別的引數(CHR 除外)並且返回字元值.除了特別說明的之外,這些函式大部分返回VARCHAR2型別的數值.字元函式的返回型別所受的限制和基本資料庫型別所受的限制是相同的,比如: VARCHAR2數值被限制為2000字元(ORACLE 8中為4000字元),而CHAR數值被限制為255字元(在ORACLE8中是2000).當在過程性語句中使用時,它們可以被賦值給VARCHAR2 或者CHAR型別的PL/SQL變數.
l CHR
語法: chr(x)
功能:返回在資料庫字符集中與X擁有等價數值的字元。CHR和ASCII是一對反函式。經過CHR轉換後的字元再經過ASCII轉換又得到了原來的字元。
使用位置:過程性語句和SQL語句。
l CONCAT
語法: CONCAT(string1,string2)
功能:返回string1,並且在後面連線string2。
使用位置:過程性語句和SQL語句。
l INITCAP
語法:INITCAP(string)
功能:返回字串的每個單詞的第一個字母大寫而單詞中的其他字母小寫的string。單詞是用.空格或給字母數字字元進行分隔。不是字母的字元不變動。
使用位置:過程性語句和SQL語句。
l LTRIM
語法:LTRIM(string1,string2)
功能:返回刪除從左邊算起出現在string2中的字元的string1。String2被預設設定為單個的空格。資料庫將掃描string1,從最左邊開始。當遇到不在string2中的第一個字元,結果就被返回了。LTRIM的行為方式與RTRIM很相似。
使用位置:過程性語句和SQL語句。
l NLS_INITCAP
語法:NLS_INITCAP(string[,nlsparams])
功能:返回字串每個單詞第一個字母大寫而單詞中的其他字母小寫的string,nlsparams
指定了不同於該會話預設值的不同排序序列。如果不指定引數,則功能和INITCAP相同。Nlsparams可以使用的形式是:
‘NLS_SORT=sort’
這裡sort制訂了一個語言排序序列。
使用位置:過程性語句和SQL語句。
l NLS_LOWER
語法:NLS_LOWER(string[,nlsparams])
功能:返回字串中的所有字母都是小寫形式的string。不是字母的字元不變。
Nlsparams引數的形式與用途和NLS_INITCAP中的nlsparams引數是相同的。如果nlsparams沒有被包含,那麼NLS_LOWER所作的處理和LOWER相同。
使用位置;過程性語句和SQL語句。
l NLS_UPPER
語法:nls_upper(string[,nlsparams])
功能:返回字串中的所有字母都是大寫的形式的string。不是字母的字元不變。nlsparams引數的形式與用途和NLS_INITCAP中的相同。如果沒有設定引數,則NLS_UPPER功能和UPPER相同。
使用位置:過程性語句和SQL語句。
l REPLACE
語法:REPLACE(string,search_str[,replace_str])
功能:把string中的所有的子字串search_str用可選的replace_str替換,如果沒有指定replace_str,所有的string中的子字串search_str都將被刪除。REPLACE是TRANSLATE所提供的功能的一個子集。
使用位置:過程性語句和SQL語句。
l RPAD
語法:RPAD(string1,x[,string2])
功能:返回在X 字元長度的位置上插入一個string2中的字元的string1。如果string2的長度要比X字元少,就按照需要進行復制。如果string2多於 X字元,則僅string1前面的X各字元被使用。如果沒有指定string2,那麼使用空格進行填充。X是使用顯示長度可以比字串的實際長度要長。 RPAD的行為方式與LPAD很相似,除了它是在右邊而不是在左邊進行填充。
使用位置:過程性語句和SQL語句。
l RTRIM
語法: RTRIM(string1,[,string2])
功能: 返回刪除從右邊算起出現在string1中出現的字元string2. string2被預設設定為單個的空格.資料庫將掃描string1,從右邊開始.當遇到不在string2中的第一個字元,結果就被返回了RTRIM的行為方式與LTRIM很相似.
使用位置:過程性語句和SQL語句。
l SOUNDEX
語法: SOUNDEX(string)
功能: 返回string的聲音表示形式.這對於比較兩個拼寫不同但是發音類似的單詞而言很有幫助.
使用位置:過程性語句和SQL語句。
l SUBSTR
語法: SUBSTR(string,a[,b])
功能: 返回從字母為值a開始b個字元長的string的一個子字串.如果a是0,那麼它就被認為從第一個字元開始.如果是正數,返回字元是從左邊向右邊進行計算的.如果b是負數,那麼返回的字元是從string的末尾開始從右向左進行計算的.如果b不存在,那麼它將預設的設定為整個字串.如果b小於1,那麼將返回NULL.如果a或b使用了浮點數,那麼該數值將在處理進行以前首先被卻為一個整數.
使用位置:過程性語句和SQL語句。
l TRANSLATE
語法: TRANSLATE(string,from_str,to_str)
功能: 返回將所出現的from_str 中的每個字元替換為to_str中的相應字元以後的string. TRANSLATE是REPLACE所提供的功能的一個超集.如果from_str比to_str長,那麼在from_str中而不在to_str中而外的字元將從string中被刪除,因為它們沒有相應的替換字元. to_str不能為空.Oracle把空字串認為是NULL,並且如果TRANSLATE中的任何引數為NULL,那麼結果也是NULL.
使用位置:過程性語句和SQL語句。
l UPPER
語法: UPPER(string)
功能: 返回大寫的string.不是字母的字元不變.如果string是CHAR資料型別的,那麼結果也是CHAR型別的.如果string是VARCHAR2型別的,那麼結果也是VARCHAR2型別的.
使用位置: 過程性語句和SQL語句。
F.2 字元函式——返回數字
這些函式接受字元引數回數字結果.引數可以是CHAR或者是VARCHAR2型別的.儘管實際下許多結果都是整數值,但是返回結果都是簡單的NUMBER型別的,沒有定義任何的精度或刻度範圍.
l ASCII
語法: ASCII(string)
功能: 資料庫字符集返回string的第一個位元組的十進位制表示.請注意該函式仍然稱作為ASCII.儘管許多字符集不是7位ASCII.CHR和ASCII是互為相反的函式.CHR得到給定字元編碼的響應字元. ASCII得到給定字元的字元編碼.
使用位置: 過程性語句和SQL語句。
l INSTR
語法: INSTR(string1, string2[a,b])
功能: 得到在string1中包含string2的位置. string1時從左邊開始檢查的,開始的位置為a,如果a是一個負數,那麼string1是從右邊開始進行掃描的.第b次出現的位置將被返回. a和b都預設設定為1,這將會返回在string1中第一次出現string2的位置.如果string2在a和b的規定下沒有找到,那麼返回0.位置的計算是相對於string1的開始位置的,不管a和b的取值是多少.
使用位置: 過程性語句和SQL語句。
l INSTRB
語法: INSTRB(string1, string2[a,[b]])
功能: 和INSTR相同,只是操作的對引數字元使用的位置的是位元組.
使用位置: 過程性語句和SQL語句。
l LENGTH
語法: LENGTH(string)
功能: 返回string的位元組單位的長度.CHAR數值是填充空格型別的,如果string由資料型別CHAR,它的結尾的空格都被計算到字串長度中間.如果string是NULL,返回結果是NULL,而不是0.
使用位置: 過程性語句和SQL語句。
l LENGTHB
語法: LENGTHB(string)
功能: 返回以位元組為單位的string的長度.對於單位元組字符集LENGTHB和LENGTH是一樣的.
使用位置: 過程性語句和SQL語句。
l NLSSORT
語法: NLSSORT(string[,nlsparams])
功能: 得到用於排序string的字串位元組.所有的數值都被轉換為位元組字串,這樣在不同資料庫之間就保持了一致性. Nlsparams的作用和NLS_INITCAP中的相同.如果忽略引數,會話使用預設排序.
使用位置: 過程性語句和SQL語句。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9606200/viewspace-745686/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- C++ 字元處理函式(cctype標頭檔案)C++字元函式
- 陣列處理函式陣列函式
- Flink處理函式實戰之四:視窗處理函式
- Sanic 處理函式修飾器函式
- mongoDB中聚合函式java處理MongoDB函式Java
- JavaScript 註冊事件處理函式JavaScript事件函式
- echarts 繫結事件處理函式Echarts事件函式
- C語言之字串處理函式C語言字串函式
- Flink處理函式實戰之五:CoProcessFunction(雙流處理)函式Function
- JavaScript 批量註冊事件處理函式JavaScript事件函式
- JavaScript 非同步函式的 Promisification 處理JavaScript非同步函式
- 六、函式、包和錯誤處理函式
- MyBatis 跳脫字元處理MyBatis字元
- Oracle OCP(03):字元函式、數字函式和日期函式Oracle字元函式
- excel 字元比較函式Excel字元函式
- thinkphp 輸出變數使用函式處理PHP變數函式
- for迴圈批量註冊事件處理函式事件函式
- Clickhouse SQL日期處理函式及案例分享SQL函式
- MySQL-日期和資料處理函式MySql函式
- 地理位置geo處理之mysql函式MySql函式
- 06.字元和字串處理字元字串
- [譯] 如何使用純函式式 JavaScript 處理髒副作用函式JavaScript
- PostgreSQL:字元——型別及函式SQL字元型別函式
- MATLAB音訊訊號處理(一):函式簡易用法(audioread,sound函式)Matlab音訊函式
- MatLab 基本影像處理(3)——函式變換Matlab函式
- SQL中的常用的字串處理函式大全SQL字串函式
- 兄弟連go教程(15)函式 - 錯誤處理Go函式
- Dart函式、類和運算子-處理資訊Dart函式
- Flink處理函式實戰之三:KeyedProcessFunction類函式Function
- Flink處理函式實戰之二:ProcessFunction類函式Function
- 在javascript中使用純函式處理副作用JavaScript函式
- JavaScript為事件處理函式傳遞引數JavaScript事件函式
- en_concat函式編譯失敗處理函式編譯
- c語言是如何處理函式呼叫的?C語言函式
- [Python影象處理] 一.影象處理基礎知識及OpenCV入門函式PythonOpenCV函式
- 字元編碼與檔案處理字元
- CnosDB:深入瞭解時序資料處理函式函式
- mListView.setOnItemClickListener的函式失效的處理辦法。View函式
- 11. 使用MySQL之使用資料處理函式MySql函式