MySQL 函式
MySQL 包含許多內建函式。
本參考包含 MySQL 中的字串、數字、日期和一些高階函式。
MySQL 字串函式
| 函式 | 描述 |
|---|---|
| ASCII | 返回特定字元的 ASCII 值 |
| CHAR_LENGTH | 返回字串的長度(以字元為單位) |
| CHARACTER_LENGTH | 返回字串的長度(以字元為單位) |
| CONCAT | 將兩個或多個表示式連線在一起 |
| CONCAT_WS | 使用分隔符將兩個或多個表示式連線在一起 |
| FIELD | 返回值在值列表中(List of values)的位置索引 |
| FIND_IN_SET | 返回字串在字串列表中的位置 |
| FORMAT | 將數字格式化為類似“#,###,###.##”的格式,並四捨五入到指定的小數位數 |
| INSERT | 在指定位置和指定字元數內,將一個字串插入到另一個字串中 |
| INSTR | 返回一個字串在另一個字串中的首次出現的位置 |
| LCASE | 將字串轉換為小寫 |
| LEFT | 從字串(從左側開始)中提取指定數量的字元 |
| LENGTH | 返回字串的長度(以位元組為單位) |
| LOCATE | 返回子字串在字串中的首次出現的位置 |
| LOWER | 將字串轉換為小寫 |
| LPAD | 使用另一個字串左填充字串,直到達到指定長度 |
| LTRIM | 從字串中刪除前導空格 |
| MID | 從字串中提取子字串(從任何位置開始) |
| POSITION | 返回子字串在字串中的首次出現的位置 |
| REPEAT | 將字串重複指定的次數 |
| REPLACE | 在字串中替換所有出現的子字串為一個新的子字串 |
| REVERSE | 反轉字串並返回結果 |
| RIGHT | 從字串(從右側開始)中提取指定數量的字元 |
| RPAD | 使用另一個字串右填充字串,直到達到指定長度 |
| RTRIM | 從字串中刪除尾隨空格 |
| 空格 | 返回指定數量空格的字串 |
| STRCMP | 比較兩個字串 |
| SUBSTR | 從字串中提取子字串(從任何位置開始) |
| SUBSTRING | 從字串中提取子字串(從任何位置開始) |
| SUBSTRING_INDEX | 在指定數量的分隔符出現之前返回字串的子字串 |
| TRIM | 移除字串的開頭和結尾的空格 |
| UCASE | 將字串轉換為大寫 |
| UPPER | 將字串轉換為大寫 |
MySQL 數值函式
| 函式 | 描述 |
|---|---|
| ABS | 返回數字的絕對值 |
| ACOS | 返回數字的反正餘弦值 |
| ASIN | 返回數字的反正弦值 |
| ATAN | 返回一個或兩個數字的反正切值 |
| ATAN2 | 返回兩個數字的反正切值 |
| AVG | 返回表示式的平均值 |
| CEIL | 返回大於或等於某數字的最小整數值 |
| CEILING | 返回大於或等於某數字的最小整數值 |
| COS | 返回數字的餘弦值 |
| COT | 返回數字的餘切值 |
| COUNT | 返回 select 查詢返回的記錄數 |
| DEGREES | 將弧度值轉換為度 |
| DIV | 用於整數除法 |
| EXP | 返回 e 的指定次冪 |
| FLOOR | 返回小於或等於某個數字的最大整數值 |
| GREATEST | 返回引數列表中最大的值 |
| LEAST | 返回引數列表中最小的值 |
| LN | 返回數字的自然對數 |
| LOG | 返回數字的自然對數,或指定底數的對數 |
| LOG10 | 返回以 10 為底的數字的自然對數 |
| LOG2 | 返回以 2 為底的數字的自然對數 |
| MAX | 在一組值中返回最大值 |
| MIN | 在一組值中返回最小值 |
| MOD | 返回一個數除以另一個數的餘數 |
| PI | 返回 PI 的值 |
| POW | 返回一個數字的另一個數字次冪的值 |
| POWER | 返回一個數字的另一個數字次冪的值 |
| RADIANS | 將度數轉換為弧度 |
| RAND | 返回一個隨機數 |
| ROUND | 將一個數字四捨五入到指定的小數位數 |
| SIGN | 返回數字的符號 |
| SIN | 返回數字的正弦值 |
| SQRT | 返回數字的平方根 |
| SUM | 計算一組值的總和 |
| TAN | 返回數字的正切值 |
| TRUNCATE | 將數字截斷到指定的小數位數 |
MySQL 日期函式
| 函式 | 描述 |
|---|---|
| ADDDATE | 向日期新增時間/日期間隔,然後返回日期 |
| ADDTIME | 將時間間隔新增到時間/日期時間,然後返回該時間/日期時間 |
| CURDATE | 返回當前日期 |
| CURRENT_DATE | 返回當前日期 |
| CURRENT_TIME | 返回當前時間 |
| CURRENT_TIMESTAMP | 返回當前日期和時間 |
| CURTIME | 返回當前時間 |
| DATE | 從日期時間表達式中提取日期部分 |
| DATEDIFF | 返回兩個日期值之間的天數 |
| DATE_ADD | 向日期新增時間/日期間隔,然後返回日期 |
| DATE_FORMAT | 格式化日期 |
| DATE_SUB | 從日期中減去一個時間/日期間隔,然後返回日期 |
| DAY | 返回給定日期的月份中的日期 |
| DAYNAME | 返回給定日期的星期名稱 |
| DAYOFMONTH | 返回給定日期的月份中的日期 |
| DAYOFWEEK | 返回給定日期的星期索引 |
| DAYOFYEAR | 返回給定日期的年份中的日期 |
| EXTRACT | 從給定日期中提取一部分 |
| FROM_DAYS | 從數字日期值返回日期 |
| HOUR | 返回給定日期的小時部分 |
| LAST_DAY | 提取給定日期的月份的最後一天 |
| LOCALTIME | 返回當前日期和時間 |
| LOCALTIMESTAMP | 返回當前日期和時間 |
| MAKEDATE | 根據年份和天數建立並返回日期 |
| MAKETIME | 根據小時、分鐘和秒值建立並返回時間 |
| MICROSECOND | 返回時間/日期時間的微秒部分 |
| MINUTE | 返回時間/日期的分鐘部分 |
| MONTH | 返回給定日期的月份部分 |
| MONTHNAME | 返回給定日期的月份名稱 |
| NOW | 返回當前日期和時間 |
| PERIOD_ADD | 將指定月數新增到週期 |
| PERIOD_DIFF | 返回兩個週期之間的差值 |
| QUARTER | 返回給定日期值的年份中的季度 |
| SECOND | 返回時間/日期的秒部分 |
| SEC_TO_TIME | 根據指定的秒數返回時間值 |
| STR_TO_DATE | 根據字串和格式返回日期 |
| SUBDATE | 從日期中減去一個時間/日期間隔,然後返回日期 |
| SUBTIME | 從日期時間中減去一個時間間隔,然後返回該時間/日期時間 |
| SYSDATE | 返回當前日期和時間 |
| TIME | 從給定的時間/日期時間中提取時間部分 |
| TIME_FORMAT | 根據指定格式格式化時間 |
| TIME_TO_SEC | 將時間值轉換為秒 |
| TIMEDIFF | 返回兩個時間/日期時間表達式之間的差值 |
| TIMESTAMP | 根據日期或日期時間值返回日期時間值 |
| TO_DAYS | 返回日期與日期“0000-00-00”之間的天數 |
| WEEK | 返回給定日期的週數 |
| WEEKDAY | 返回給定日期的星期索引 |
| WEEKOFYEAR | 返回給定日期的週數 |
| YEAR | 返回給定日期的年份部分 |
| YEARWEEK | 返回給定日期的年份和週數 |
MySQL 高階函式
| 函式 | 描述 |
|---|---|
| BIN | 返回數字的二進位制表示 |
| BINARY | 將值轉換為二進位制字串 |
| CASE | 檢查條件並返回第一個滿足條件的條件下的值 |
| CAST | 將一個值(任何型別)轉換為指定的資料庫型別 |
| COALESCE | 返回列表中的第一個非 NULL 值 |
| CONNECTION_ID | 返回當前連線的唯一連線 ID |
| CONV | 將數字從一個數值基系統轉換為另一個 |
| CONVERT | 將值轉換為指定的日期型別或字元集 |
| CURRENT_USER | 返回伺服器用於身份驗證當前客戶端的 MySQL 帳戶的使用者名稱和主機名 |
| DATABASE | 返回當前資料庫的名稱 |
| IF | 如果條件為 TRUE,則返回一個值,否則返回另一個值 |
| IFNULL | 如果表示式為 NULL,則返回指定的值,否則返回表示式 |
| ISNULL | 根據表示式是否為 NULL 返回 1 或 0 |
| LAST_INSERT_ID | 返回已插入表中最後一條記錄的 AUTO_INCREMENT ID |
| NULLIF | 比較兩個表示式,如果它們相等則返回 NULL。否則,返回第一個表示式 |
| SESSION_USER | 返回當前的 MySQL 使用者名稱和主機名 |
| SYSTEM_USER | 返回當前的 MySQL 使用者名稱和主機名 |
| USER | 返回當前的 MySQL 使用者名稱和主機名 |
| VERSION | 返回 MySQL 資料庫的當前版本 |