本文為快速查閱版,詳細範例與進階用法請參考完整版(文章 172789)。
| 函數 | 用途 |
|---|---|
| ABS(x) | 絕對值 |
| CEIL/CEILING(x) | 向上取整 |
| FLOOR(x) | 向下取整 |
| ROUND(x, y) | 四捨五入保留 y 位 |
| TRUNCATE(x, y) | 截斷保留 y 位(不四捨五入) |
| MOD(x, y) | 餘數 |
| POW/POWER(x, y) | 冪運算 |
| SQRT(x) | 平方根 |
| RAND([seed]) | 隨機數,種子固定序列可重現 |
| SIGN(x) | 符號 -1/0/1 |
| PI() | 圓周率 |
| EXP(x) | e^x |
| LN/LOG(x) | 自然對數 |
| LOG(x, y) | 以 y 為底對數 |
| GREATEST/LEAST | 多值最大/最小 |
| 函數 | 說明 |
|---|---|
| AVG(col) | 平均值 |
| COUNT(col) | 非空計數;COUNT(*) 含空值 |
| SUM(col) | 總和 |
| MIN/MAX(col) | 極值 |
| GROUP_CONCAT(col) | 分組串聯 |
| STD/STDDEV(col) | 標準差 |
| 函數 | 說明 |
|---|---|
| CONCAT / CONCAT_WS | 串聯 / 帶分隔符串聯 |
| LENGTH / CHAR_LENGTH | 位元組長度 / 字元數 |
| LEFT / RIGHT | 左/右 n 字元 |
| SUBSTRING / MID | 擷取子字串 |
| TRIM / LTRIM / RTRIM | 去空格 |
| REPLACE | 替換 |
| UPPER / LOWER | 大小寫轉換 |
| FIND_IN_SET | 逗號列表查找位置 |
| LOCATE / INSTR / POSITION | 子字串位置 |
| REVERSE | 反轉 |
| INSERT | 指定位置替換 |
| REPEAT | 重複 n 次 |
| 函數 | 說明 |
|---|---|
| NOW / CURDATE / CURTIME | 當前日期時間 / 日期 / 時間 |
| DATE_ADD / DATE_SUB | 日期加減 INTERVAL |
| DATEDIFF | 日期差天數 |
| DATE_FORMAT / TIME_FORMAT | 格式化輸出 |
| UNIX_TIMESTAMP / FROM_UNIXTIME | 時間戳互轉 |
| EXTRACT(unit FROM date) | 擷取年/月/日/時/分/秒等 |
| DAYOFWEEK / MONTH / QUARTER / YEAR | 時間單位擷取 |
| DAYNAME / MONTHNAME | 英文名稱 |
| TO_DAYS / FROM_DAYS | 與公元元年天數互換 |
| ADDDATE / SUBDATE / ADDTIME / SUBTIME | 日期時間加減別名 |
| SEC_TO_TIME / TIME_TO_SEC | 秒數與時間互換 |
| 函數 | 說明 |
|---|---|
| MD5(str) | 32 位雜湊,不可逆 |
| SHA1/SHA2(str, 256|512) | 更安全雜湊 |
| PASSWORD(str) | MySQL 內部認證(版本相關) |
| AES_ENCRYPT/AES_DECRYPT | AES 對稱加密,結果為二進位 |
| ENCODE/DECODE | 舊式對稱加密(5.7+ 棄用) |
| ENCRYPT(str, salt) | Unix crypt(僅前 8 字元有效) |
| 函數 | 說明 |
|---|---|
| IF(cond, t, f) | 三元運算 |
| IFNULL(v1, v2) | v1 非空則 v1 否則 v2 |
| NULLIF(v1, v2) | 相等則 NULL 否則 v1 |
| CASE WHEN ... THEN ... ELSE ... END | 多條件分支 |
| CASE expr WHEN ... THEN ... ELSE ... END | 值匹配分支 |
| 函數 | 說明 |
|---|---|
| FORMAT(x, n) | 數值千分位,保留 n 位小數 |
| INET_ATON / INET_NTOA | IPv4 與無號整數互轉 |
| DATE_FORMAT / TIME_FORMAT | 日期時間格式化 |
| 函數 | 支援型別 |
|---|---|
| CAST(expr AS type) | BINARY, CHAR, DATE, TIME, DATETIME, SIGNED, UNSIGNED |
| CONVERT(expr, type) | 同上 |
| BINARY 'str' | 強制二進位比較(區分大小寫) |
| 函數 | 說明 |
|---|---|
| VERSION() | 版本號 |
| DATABASE() | 當前庫 |
| USER() / CURRENT_USER() | 當前用戶 |
| CONNECTION_ID() | 連線 ID |
| LAST_INSERT_ID() | 最後自增 ID |
| FOUND_ROWS() | 上一查詢總行數(配合 SQL_CALC_FOUND_ROWS) |
| BENCHMARK(n, expr) | 效能測試 |
WHERE DATE(create_time) = '2023-01-01'),改用範圍查詢。