字符函數(shù)
數(shù)字函數(shù)
日期函數(shù)
DATE_FORMAT() 函數(shù)的參數(shù)種類格式描述:
%a 縮寫星期名
%b 縮寫月名
%c 月,數(shù)值
%D 帶有英文前綴的月中的天
%d 月的天,數(shù)值(00-31)
%e 月的天,數(shù)值(0-31)
%f 微秒
%H 小時(shí) (00-23)
%h 小時(shí) (01-12)
%I 小時(shí) (01-12)
%i 分鐘,數(shù)值(00-59)
%j 年的天 (001-366)
%k 小時(shí) (0-23)
%l 小時(shí) (1-12)''
%M 月名
%m 月,數(shù)值(00-12)
%p AM 或 PM
%r 時(shí)間,12-小時(shí)(hh:mm:ss AM 或 PM)
%S 秒(00-59)
%s 秒(00-59)
%T 時(shí)間, 24-小時(shí) (hh:mm:ss)
%U 周 (00-53) 星期日是一周的第一天
%u 周 (00-53) 星期一是一周的第一天
%V 周 (01-53) 星期日是一周的第一天,與 %X 使用
%v 周 (01-53) 星期一是一周的第一天,與 %x 使用
%W 星期名
%w 周的天 (0=星期日%E, 6=星期六)
%X 年,其中的星期日是周的第一天,4 位,與 %V 使用
%x 年,其中的星期一是周的第一天,4 位,與 %v 使用
%Y 年,4 位
%y 年,2 位
控制流函數(shù)
-------------示例----------
-------------------------------字符函數(shù)-----------------------------------
#在hello的左右兩邊各添加5個(gè)’*’,返回‘*****hello*****’(三種方法實(shí)現(xiàn))
SELECT RPAD(LPAD('hello',10,'*'),15,'*');
SELECT CONCAT(CONCAT('*****','hello'),'*****');
SELECT RPAD(CONCAT('*****','hello'),15,'*');
SELECT CONCAT(LPAD('hello',10,'*'),'*****');
#從字符串‘a(chǎn)bcdefghijklmn’中返回后三位字符,并轉(zhuǎn)換為大寫
SELECT UPPER(RIGHT('abcdefghijklmn',3))
#查詢名字包含5個(gè)字符的員工的姓名,工資,獎(jiǎng)金(獎(jiǎng)金為空則顯示為0)、職位、部門號
SELECT ename,sal,IFNULL(comm,0) comm,job,deptno FROM emp
WHERE LENGTH(ename) >= 5
#查詢姓名中不含‘A’的員工的編號、姓名、職位、部門號
SELECT empno,ename,job,deptno FROM emp
WHERE INSTR(ename,'A') = 0
#顯示將員工姓名的第一個(gè)字符去掉后的字符串,如‘ALLEN’顯示為‘LLEN’
SELECT ename FROM emp? #xianshizhiqiandemingzi
SELECT SUBSTRING(ename,2,LENGTH(ename)-1)? FROM emp
#使用員工姓名的第一個(gè)字符,從左邊將員工姓名補(bǔ)齊到長度為10
SELECT LPAD(ename,10,LEFT(ename,1)) FROM emp
-------------------------------日期函數(shù)-----------------------------------
#查詢6月份入職的員工的姓名,工資,入職日期、職位、部門號
SELECT ename,sal,hiredate,job,deptno FROM emp
WHERE DATE_FORMAT(hiredate,'%c') = 6
#查詢1981年下半年入職的員工的編號、姓名、職位、入職日期、部門號
SELECT empno,ename,job,hiredate,deptno FROM emp
WHERE DATE_FORMAT(hiredate,'%Y') = 1981
AND DATE_FORMAT(hiredate,'%c')>6
#查詢在某個(gè)月倒數(shù)第三天入職的員工的姓名、職位、入職日期
SELECT ename,job,hiredate FROM emp
WHERE DATE_FORMAT(LAST_DAY(hiredate),'%e')-2 = DATE_FORMAT(hiredate,'%e')