Oracle中相關函數說明

來源:互聯網
上載者:User

  3、round函數 ROUND(number, num_digits) 將number四捨五入到只有num_digits個小數位。 4、lpad、rpad函數 lpad()函數的用法: lpad函數將左邊的字串填充一些特定的字元其文法格式如下: lpad(string,n,[pad_string]) string:可是字元或者參數 n:字元的長度,是返回的字串的數量,如果這個數量比原字串的長度要短,lpad函數將會把字串截取成從左至右的n個字元; pad_string:是個選擇性參數,這個字串是要粘貼到string的左邊,如果這個參數未寫,lpad函數將會在string的左邊粘貼空格。 例如: lpad('tech', 7); 將返回' tech' lpad('tech', 2); 將返回'te' lpad('tech', 8, '0'); 將返回'0000tech' lpad('tech on the net', 15, 'z'); 將返回'tech on the net' lpad('tech on the net', 16, 'z'); 將返回'ztech on the net' rpad()函數的用法: rpad函數將右邊的字串填充一些特定的字元其文法格式如下: rpad(string,n,[pad_string]) string:可是字元或者參數 n:字元的長度,是返回的字串的數量,如果這個數量比原字串的長度要短,lpad函數將會把字串截取成從左至右的n個字元; pad_string:是個選擇性參數,這個字串是要粘貼到string的右邊,如果這個參數未寫,lpad函數將會在string的右邊粘貼空格。 例如: rpad('tech', 7); 將返回' tech' rpad('tech', 2); 將返回'te' rpad('tech', 8, '0'); 將返回'tech0000' rpad('tech on the net', 15, 'z'); 將返回'tech on the net' rpad('tech on the net', 16, 'z'); 將返回'tech on the netz' 5、ltrim、rtrim函數 ltrim(x,y) 函數是按照y中的字元一個一個截掉x中的字元,並且是從左邊開始執行的,只要遇到y中有的字元, x中的字元都會被截掉, 直到在x的字元中遇到y中沒有的字元為止函數命令才結束 .函數將109當成了三個字元以1,0,9在字串開始直道出現不為1,0,9這三個字元中的任意一個開始截取;

SELECT LTRIM('1092002081100058424', '109') FROM dual
UNION ALL
SELECT LTRIM('1091000000002671251', '109') FROM dual
UNION ALL
SELECT LTRIM('1000000002671251', '1') FROM dual
UNION ALL
SELECT LTRIM('1000000002671251', '10') FROM dual

結果如下:

1 2002081100058424
2 2671251
3 000000002671251
4 2671251

  RTRIM(,)的意思是:

  首先從字串'c1'右邊尋找'c2'中的任一字元,此例為'w','q',直到'wfrqqww'右邊不為'w'和'q'字元為止

  SELECT RTRIM ('wfrqqww', 'qq') FROM DUAL查詢出來的資料是wfr,

  6、instr instr函數返回要截取的字串在源字串中的位置。 文法如下:

instr( string1, string2, start_position,nth_appearance ) [1] [2]

string1 源字串,要在此字串中尋找。
string2 要在string1中尋找的字串 。
start_position 代表string1 的哪個位置開始尋找。此參數可選,如果省略預設為1. 字串索引從1開始。如果此參數為正,從左至右開始檢索,如果此參數為負,從右至左檢索,返回要尋找的字串在源字串中的開始索引。
nth_appearance 代表要尋找第幾次出現的string2. 此參數可選,如果省略,預設為 1.如果為負數系統會報錯。

注意:

  位置索引號從1開始。

  如果String2在String1中沒有找到,instr函數返回0。

  樣本:

  SELECT instr('syranmo','s') FROM dual; -- 返回 1

  SELECT instr('syranmo','ra') FROM dual; -- 返回 3

  SELECT instr('syran mo','a',1,2) FROM dual; -- 返回 0 7、substr

  substr(字串,截取開始位置,截取長度) //返回截取的字

  substr('Hello World',0,1) //返回結果為 'H' *從字串第一個字元開始截取長度為1的字串

  substr('Hello World',1,1) //返回結果為 'H' *0和1都是表示截取的開始位置為第一個字元

  substr('Hello World',2,4) //返回結果為 'ello'

  substr('Hello World',-3,3)//返回結果為 'rld' *負數(-i)表示截取的開始位置為字串右端向左數第i個字元

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.