Oracle入門第二天(下)——單行函數
阿新 • • 發佈:2018-01-03
參數 tca 分享圖片 開始 () ins subst lpad 提醒
一、概述
什麽是單行函數:
操作數據對象
接受參數返回一個結果
只對一行進行變換
每行返回一個結果
可以轉換數據類型
可以嵌套
參數可以是一列或一個值
// 比如分組函數就是典型的多行函數
分類:
二、字符函數
大小寫控制函數:
LOWER()——轉化為小寫
UPPER()——轉化為大寫
INITCAP()——首字母大寫
SELECT LOWER(‘SQL Course‘),UPPER(‘SQL Course‘),INITCAP(‘ SQL Course‘) FROM dual;
LOWER(‘SQLCOURSE‘) UPPER(‘SQLCOURSE‘) INITCAP(‘SQLCOURSE‘)
------------------ ------------------ --------------------
sql course SQL COURSE Sql Course
// dual是一張續表,並且再次提醒SQL大小寫不敏感,lower()也是允許的
字符控制函數:
CONCAT(‘Hello‘, ‘World‘)——連接字符串
SUBSTR(‘HelloWorld‘,1,5)——取子串,從下標1開始,取5個(SQL下標從1開始而不是0)
LENGTH(‘HelloWorld‘)——得到長度
INSTR(‘HelloWorld‘, ‘W‘)——首次出現的位置
LPAD(salary,10,‘*‘)——左補齊
RPAD(salary, 10, ‘*‘)——右補齊
TRIM(‘H‘ FROM ‘HelloWorld‘)——去除首尾的指定字符
REPLACE(‘abcd’,’b’,’m’)——替換所有的字符,(將b替換為m)
SELECT CONCAT(‘HelloWorld‘,‘jiangbei‘),SUBSTR(‘HelloWorld‘,1,5),LENGTH(‘HelloWorld‘),INSTR(‘HelloWorld‘,‘W‘) FROM dual;
CONCAT(‘HELLOWORLD‘,‘JIANGBEI‘ SUBSTR(‘HELLOWORLD‘,1,5) LENGTH(‘HELLOWORLD‘) INSTR(‘HELLOWORLD‘,‘W‘)
------------------------------ ------------------------ -------------------- -----------------------
HelloWorldjiangbei Hello 10 6
SELECT LPAD(salary,10,‘*‘) FROM employees;
LPAD(SALARY,10,‘*‘)
--------------------
*****24000
*****17000
*****17000
******9000
******6000
SELECT TRIM(‘H‘ FROM ‘H2H2H‘),REPLACE(‘H2H2H2‘,‘H‘,‘M‘) FROM dual;
TRIM(‘H‘FROM‘H2H2H‘) REPLACE(‘H2H2H2‘,‘H‘,‘M‘)
-------------------- -------------------------
2H2 M2M2M2
三、數字函數
ROUND(45.926,2)——四舍五入
TRUNC(45.926,2)——截斷
MOD(100,3)——求余
SELECT ROUND(45.926,2),TRUNC(45.926,2),MOD(100,3) FROM dual;
ROUND(45.926,2) TRUNC(45.926,2) MOD(100,3)
--------------- --------------- ----------
45.93 45.92 1
Oracle入門第二天(下)——單行函數