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>)的意思是:
首先從字符串'c1'右邊查找'c2'中的任意字符,此例為'w','q',直到'wfrqqww'右邊不為'w'和'q'字符為止
SELECT RTRIM ('wfrqqww', 'qq') FROM DUAL查詢出來的數據是wfr,
6、instr instr函數返回要截取的字符串在源字符串中的位置。 語法如下: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個字符