函数 | 描述 |
---|---|
BIN | 返回数字的二进制表示 |
BINARY | 将值转换为二进制字符串 |
CASE | 遍历条件并在满足第一个条件时返回一个值 |
CAST | 将(任何类型的)值转换为指定的数据类型 |
COALESCE | 返回列表中的第一个非空值 |
CONNECTION_ID | 返回当前连接的唯一连接 ID |
CONV | 将数字从一种数字基系统转换为另一种数字系统 |
CONVERT | 将值转换为指定的数据类型或字符集 |
CURRENT_USER | 返回服务器用来验证当前客户端的 MySQL 帐户的用户名和主机名 |
DATABASE | 返回当前数据库的名称 |
IF | 如果条件为 TRUE,则返回一个值,如果条件为 FALSE,则返回另一个值 |
IFNULL | 如果表达式为NULL,则返回指定值,否则返回表达式 |
ISNULL | 根据表达式是否为 NULL 返回 1 或 0 |
LAST_INSERT_ID | 返回表中已插入或更新的最后一行的 AUTO_INCREMENT id |
NULLIF | 比较两个表达式,如果相等则返回 NULL。否则返回第一个表达式 |
SESSION_USER | 返回当前 MySQL 用户名和主机名 |
SYSTEM_USER | 返回当前 MySQL 用户名和主机名 |
USER | 返回当前 MySQL 用户名和主机名 |
VERSION | 返回 MySQL 数据库的当前版本 |
以字符串形式返回 MySQL 数据库的当前版本
语法
VERSION()
示例
mysql> SELECT VERSION();
+-----------+
| VERSION() |
+-----------+
| 8.0.29 |
+-----------+
返回一个值,如果条件为 FALSE,则返回另一个值
语法
IF(condition[, value_if_true[, value_if_false]])
示例
mysql> SELECT IF(500<1000, 5, 10);
+---------------------+
| IF(500<1000, 5, 10) |
+---------------------+
| 5 |
+---------------------+
CASE 语句遍历条件并在满足第一个条件时返回一个值(如 IF-THEN-ELSE 语句)。 因此,一旦条件为真,它将停止读取并返回结果。
如果没有条件为真,它将返回 ELSE 子句中的值。
如果没有ELSE部分且没有条件为真,则返回NULL。
语法
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN conditionN THEN resultN
ELSE result
END;
示例
mysql> SELECT (
CASE
WHEN 1 < 0 THEN -1
WHEN 1 > 0 THEN 1
ELSE 0
END
) as result;
+--------+
| result |
+--------+
| 1 |
+--------+