1. 程式人生 > >Oracle入門第二天(下)——單行函數

Oracle入門第二天(下)——單行函數

參數 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(HFROMH2H2H) 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入門第二天(下)——單行函數