1. 程式人生 > >SQL字元函式與數值函式

SQL字元函式與數值函式

字元函式
1、轉換大小寫
UPPER(列|字串):將字串的內容全部大寫
LOWER(列字串):將字串的內容全部小寫
SELECT UPPER(‘zhixu’),LOWER(‘ZHIXU’) FROM dual ;
SELECT LOWER(ENAME) FROM EMP ; 一列資訊變為小寫
select * from emp where lower(ENAME)=‘smith’
2、首字母大寫
INITCAP(列|字串):將字串的開頭首字母大寫
select ename,INITCAP(ename)from emp; 首字母大寫其餘小寫
3、替換
REPLACE(列|字串,新的字串):使用新的字串替換舊的字串
select ename,replace(ename,‘A’,’_’)from emp 把ename這一列中的A用_代替
4、計算字串長度
LENGTH(列|字串):求出字串長度
SELECT * FROM emp WHERE LENGTH(ename)=5 ; 查詢出姓名長度是5的所有僱員資訊
5、擷取
SUBSTR(列|字串,開始點[,長度]):字串擷取
select substr(‘ABC’,1,1) from dual; 從第一個字元開始,擷取一個字元
SELECT FROM emp WHERE SUBSTR(ename,0,3)=‘JAM’ ;找前三個字母為JAM的使用者資訊
SUBSTR(ename,3) 從第三個開始到最後
SUBSTR(ename,-3) 後三個字母
6、ASCII碼
SELECT ASCII(‘L’) FROM dual ; 返回ASCII碼
7、字元函式
CHR(數字):給出一個整數,並返回與之對應的字元
SELECT CHR(100) FROM dual ; 查詢ASCII為100對應的字元
8、去掉空格
LTRIM去掉左空格,RTRIM去掉右空格
SELECT ’ DONGFEI VDATA ’ , LTRIM(’ DONGFEI VDATA’) from dual; 去掉左面空格
SELECT ’ DONGFEI VDATA ’ , RTRIM(’ DONGFEI VDATA ‘) from dual; 去掉右面空格
TRIM去左右空格。
SELECT ’ DONGFEI VDATA ’ , TRIM(’ DONGFEI VDATA ') from dual; 去掉空格
9、字串填充
RPAD(列|字串,長度,填充字元):在右填充指定長度字串。
LPAD(列|字串,長度,填充字元):在左填充指定長度字串。
SELECT LPAD(‘VDATA’ , 10 ,’

‘) from dual; 左面新增* VDATA佔據5位,剩餘5位用**補齊
SELECT RPAD(‘VDATAD’ , 10 ,’‘) from dual; 右面新增 VDATAD佔據6位,剩餘4位用*補齊
10、查詢字串
INSTR(列|字串,要查詢的字串) 有的話為1,沒有為0
SELECT INSTR(‘VDATA Oracle’ , ‘VDATA’) from dual;

數值函式
1、四捨五入
ROUND(數字[,保留位數]):對小數進行四捨五入
SELECT empno,ename,job,hiredate,sal,ROUND(sal/30,2) FROM emp ; 保留兩位小數
2、擷取
TRUNC(數字[,擷取位數]):保留指定位數的小數
SELECT TRUNC(789.652) 擷取小數, TRUNC(789.652,2) 擷取兩位小數
SELECT TRUNC(789.652,-2) from dual; 700整數位從後數第三位之後全是0
3、檢視餘數
MOD(數字,數字):取模
SELECT MOD(10,3) FROM DUAL ;