1. 程式人生 > 其它 >MySQL進階之常用函式

MySQL進階之常用函式

我的小站

有時候,除了簡單的資料查詢,我們還有一些高階的函式。

MySQL 包含了大量並且豐富的函式,這套 MySQL 函式大全只收集了幾十個常用的,剩下的比較罕見的函式我們就不再整理了,讀者可以到MySQL 官網查詢。

來源:C語言中文網

MySQL數值型函式

函式名稱 作 用
ABS 求絕對值
SQRT 求二次方根
MOD 求餘數
CEIL 和 CEILING 兩個函式功能相同,都是返回不小於引數的最小整數,即向上取整
FLOOR 向下取整,返回值轉化為一個BIGINT
RAND 生成一個0~1之間的隨機數,傳入整數引數是,用來產生重複序列
ROUND
對所傳引數進行四捨五入
SIGN 返回引數的符號
POW 和 POWER 兩個函式的功能相同,都是所傳引數的次方的結果值
kSIN 求正弦值
ASIN 求反正弦值,與函式 SIN 互為反函式
COS 求餘弦值
ACOS 求反餘弦值,與函式 COS 互為反函式
TAN 求正切值
ATAN 求反正切值,與函式 TAN 互為反函式
COT 求餘切值

MySQL字串函式

函式名稱 作 用
LENGTH 計算字串長度函式,返回字串的位元組長度
CONCAT 合併字串函式,返回結果為連線引數產生的字串,引數可以使一個或多個
INSERT 替換字串函式
LOWER 將字串中的字母轉換為小寫
UPPER 將字串中的字母轉換為大寫
LEFT 從左側字擷取符串,返回字串左邊的若干個字元
RIGHT 從右側字擷取符串,返回字串右邊的若干個字元
TRIM 刪除字串左右兩側的空格
REPLACE 字串替換函式,返回替換後的新字串
SUBSTRING 擷取字串,返回從指定位置開始的指定長度的字元換
REVERSE 字串反轉(逆序)函式,返回與原始字串順序相反的字串

MySQL日期和時間函式

函式名稱 作 用
CURDATE 和 CURRENT_DATE 兩個函式作用相同,返回當前系統的日期值
CURTIME 和 CURRENT_TIME
兩個函式作用相同,返回當前系統的時間值
NOW 和 SYSDATE 兩個函式作用相同,返回當前系統的日期和時間值
UNIX_TIMESTAMP 獲取UNIX時間戳函式,返回一個以 UNIX 時間戳為基礎的無符號整數
FROM_UNIXTIME 將 UNIX 時間戳轉換為時間格式,與UNIX_TIMESTAMP互為反函式
MONTH 獲取指定日期中的月份
MONTHNAME 獲取指定日期中的月份英文名稱
DAYNAME 獲取指定曰期對應的星期幾的英文名稱
DAYOFWEEK 獲取指定日期對應的一週的索引位置值
WEEK 獲取指定日期是一年中的第幾周,返回值的範圍是否為 0〜52 或 1〜53
DAYOFYEAR 獲取指定曰期是一年中的第幾天,返回值範圍是1~366
DAYOFMONTH 獲取指定日期是一個月中是第幾天,返回值範圍是1~31
YEAR 獲取年份,返回值範圍是 1970〜2069
TIME_TO_SEC 將時間引數轉換為秒數
SEC_TO_TIME 將秒數轉換為時間,與TIME_TO_SEC互為反函式
DATE_ADD 和 ADDDATE 兩個函式功能相同,都是向日期新增指定的時間間隔
DATE_SUB 和 SUBDATE 兩個函式功能相同,都是向日期減去指定的時間間隔
ADDTIME 時間加法運算,在原始時間上新增指定的時間
SUBTIME 時間減法運算,在原始時間上減去指定的時間
DATEDIFF 獲取兩個日期之間間隔,返回引數 1 減去引數 2 的值
DATE_FORMAT 格式化指定的日期,根據引數返回指定格式的值
WEEKDAY 獲取指定日期在一週內的對應的工作日索引

MySQL聚合函式

函式名稱 作用
MAX 查詢指定列的最大值
MIN 查詢指定列的最小值
COUNT 統計查詢結果的行數
SUM 求和,返回指定列的總和
AVG 求平均值,返回指定列資料的平均值

MySQL流程控制函式

函式名稱 作用
IF 判斷,流程控制
IFNULL 判斷是否為空
CASE 搜尋語句