SQL常用函數


一、字符函數

1) LENGTH 

#獲取參數值的字節個數

SELECT LENGTH ('lala') ;

結果: 4

2) CONCAT 

#拼接字符串

SELECT CONCAT ('asd' , 'we' );

結果: asdwe

3) UPPER

#將參數全部變為大寫

SELECT UPPER(' abcd' );

結果:   ABCD

3) LOWER

將參數全部變為小寫

SELECT LOWER(' ABCD' );

結果:   abcd

4) SUBSTR

#索引從1開始,返回指定位置及其之后的字符串

SELECT SUBSTR( ' ABCD' , 2 ); 

結果:BCD

#截取從指定索引處(第二個參數)開始,獲取索引位置及其后指定字符長度的字符串(第三個參數)

SELECT SUBSTR( ' ABCD' , 1,3 ); 

結果:ABC

5) INSTR 

返回第二個參數在第一個參數中第一次出現的位置,若沒有出現,則返回0

SELECT INSTR('ABCD' , 'CD')

結果:  3

SELECT INSTR('ABCD' , 'E')

結果:  0

6) TRIM

#去除首尾指定的字符,若沒有指定,則表示去除空格

SELECT TRIM ( '#' , '###acd##sas###');

結果:  acd##sas

7) LPAD 

#用指定的字符實現左填充指定長度,同時也是結果的最終長度

SELECT LPAD( 'abc' , 4 , '#'');

結果:  #ABC

8) RPAD 

#用指定的字符實現右填充指定長度,同時也是結果的最終長度

SELECT LPAD( 'ABC' , 4 , '#');

結果:  ABC#

 

SELECT LPAD( 'ABC' , 2 , '#');

結果:  AB

9) REPLACE

#替換所有的指定的字符串為另一個字符串

SELECT REPLACE( 'ABCBCD' , 'BC' ,'#' ); 

結果: A##D

二、數學函數

1) ROUND

#四舍五入

 SELECT ROUND(-1.55);

結果:  -2 

#保留指定小數的位數

SELECT ROUND (1.547,2);

結果:  1.54

2) CEIL 

#向上取整,返回大於等於該參數的最小整數

SELECT CEIL (-1.0002);

結果:  -1

3) FLOOR

#向下取整,返回小於等於該參數的最大整數

SELECT CEIL (9.99999);

結果:  9

4) TRUNCATE

#截斷

SELECT TRUNCATE (1.6699,2);

結果:  1.66

5) MOD

#取模

SELECT MOD(-10,-3)

結果:  -1

三、日期函數

1) NOW

#返回當前系統日期+時間

SELECT NOW();

2) CURDATE

#返回當前系統時間,不包含時間

SELECT CURDATE();

3) CURTIME 

#返回當前時間,不包含日期

SELECT CURTIME();

4) MONTHNAME , DAYNAME  等

#返回日期的英文名字

SELECT DAYNAME(NOW());

5) STR_TO_DATE

#將字符串通過指定的格式轉化為日期

SELECT STR_TO_DATE('4-3#1992', '%m-%d#%Y');

結果:1992-04-03

6) DATE_FORMAT

#將日期轉化為指定格式字符串

SELECT DATE_FORMAT(NOW(), '%m#%d#%Y');

結果: 04#27#2019

三、其他函數

1) SELECT VERSION()

#獲取sql的版本號

2) SELECT DATABASE()

#獲取當前所在數據庫名

3)SELECT USER()

#獲取登陸用戶名

四、流程控制函數

1) if

#一共三個參數,若第一個參數代表的表達式值為true, 則執行第二個參數代表的表達式,否則執行第三個參數代表的表達式

SELECT IF (10 > 5 , '大' , '小' );

結果: 大

2) case

用法一:

#相當於switch case

CASE 要判斷的字段或者表達式

WHEN 常量1 THEN 要顯示的值1或者與語句1

WHEN 常量2   THEN 要顯示的值2或者與語句2

WHEN 常量3 THEN 要顯示的值3或者與語句3

ELSE  要顯示的值x或者與語句x

END

用法二:

#相當於多重if

#相當於switch case

CASE

WHEN 條件1 THEN 要顯示的值1或者與語句1

WHEN 條件2   THEN 要顯示的值2或者與語句2

WHEN 條件3 THEN 要顯示的值3或者與語句3

ELSE  要顯示的值x或者與語句x

END


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM