函数 | 描述 | 实例 |
---|---|---|
CHAR_LENGTH(s) | 返回字符串 s 的字符数 | SELECT CHAR_LENGTH('lijw') AS '长度'; |
CONCAT(s1,s2...sn) | 字符串 s1,s2 等多个字符串合并为一个字符串 | SELECT CONCAT('Happy','niu','year'); |
LOWER(s) | 将字符串 s 的所有字母变成小写字母 | SELECT LOWER('HAPPY NIU YEAR'); |
UPPER(s) | 将字符串转换为大写 | SELECT UPPER("happy niu year"); |
SUBSTR(s, start,length) | 从字符串 s 的 start 位置截取长度为 length 的子字符串 | SELECT SUBSTR("Happy niu year",1,2); |
TRIM(s) | 去掉字符串 s 开始和结尾处的空格 | SELECT TRIM(' Happy niu year ') |
示例:
-- 返回字符串的字符数 mysql> SELECT CHAR_LENGTH('lijw') AS '长度'; +--------+ | 长度 | +--------+ | 4 | +--------+ row in set (0.00 sec) -- 字符串 s1,s2 等多个字符串合并为一个字符串 mysql> SELECT CONCAT('Happy','niu','year'); +------------------------------+ | CONCAT('Happy','niu','year') | +------------------------------+ | Happyniuyear | +------------------------------+ row in set (0.00 sec) -- 将字符串 s 的所有字母变成小写字母 mysql> SELECT LOWER('HAPPY NIU YEAR'); +-------------------------+ | LOWER('HAPPY NIU YEAR') | +-------------------------+ | happy niu year | +-------------------------+ row in set (0.00 sec) -- 将字符串转换为大写 mysql> SELECT UPPER("happy niu year"); +-------------------------+ | UPPER("happy niu year") | +-------------------------+ | HAPPY NIU YEAR | +-------------------------+ row in set (0.00 sec) -- 从字符串 s 的 start 位置截取长度为 length 的子字符串 mysql> SELECT SUBSTR("Happy niu year",1,2); +------------------------------+ | SUBSTR("Happy niu year",1,2) | +------------------------------+ | Ha | +------------------------------+ row in set (0.00 sec) -- 去掉字符串 s 开始和结尾处的空格 mysql> SELECT TRIM(' Happy niu year '); +--------------------------+ | TRIM(' Happy niu year ') | +--------------------------+ | Happy niu year | +--------------------------+ row in set (0.00 sec) mysql>
函数 | 描述 | 实例 |
---|---|---|
RAND() | 返回 0 到 1 的随机数 | SELECT RAND(); |
ROUND(小 小数 数, 保留 几位 位) | 四舍五入保留几位小数 | SELECT ROUND(3.1415926,2) ; |
LEAST(expr1, expr2, expr3, ...) | 返回列表中的最小值 | SELECT LEAST(13, 14, 521, 74, 1) |
GREATEST(expr1, expr2,expr3, ...) | 返回列表中的最大值 | SELECT GREATEST(13, 14, 521, 74, 1) |
示例:
-- 返回0-1之间的随机数 mysql> SELECT RAND(); +--------------------+ | RAND() | +--------------------+ | 0.5957162041177193 | +--------------------+ row in set (0.00 sec) mysql> -- 四舍五入保留几位小数 mysql> SELECT ROUND(3.1415926,2); +--------------------+ | ROUND(3.1415926,2) | +--------------------+ | 3.14 | +--------------------+ row in set (0.00 sec) -- 返回列表中的最小值 mysql> SELECT LEAST(13, 14, 521, 74, 1); +---------------------------+ | LEAST(13, 14, 521, 74, 1) | +---------------------------+ | 1 | +---------------------------+ row in set (0.00 sec) -- 返回列表中的最大值 mysql> SELECT GREATEST(13, 14, 521, 74, 1); +------------------------------+ | GREATEST(13, 14, 521, 74, 1) | +------------------------------+ | 521 | +------------------------------+ row in set (0.00 sec)
函数名 | 描述 | 实例 |
---|---|---|
NOW() 和 SYSDATE() | 返回系统的当前日期和时间 | SELECT NOW(); 或 SELECT SYSDATE(); |
CURDATE() | 返回当前日期 | SELECT CURDATE(); |
CURTIME() | 返回当前系统时间 | SELECT CURTIME(); |
YEAR(d) | 返回d的中的年份 | SELECT YEAR(NOW()); |
MONTH(d) | 返回d的中的月份 | SELECT MONTH(NOW()); |
DAY(d) | 返回d中的日 | SELECT DAY(NOW()); |
示例:
-- 返回系统的当前时间: 年-月-日 时:分:秒 mysql> SELECT NOW(); +---------------------+ | NOW() | +---------------------+ | 2021-02-12 09:47:12 | +---------------------+ row in set (0.00 sec) mysql> SELECT SYSDATE(); +---------------------+ | SYSDATE() | +---------------------+ | 2021-02-12 09:47:22 | +---------------------+ row in set (0.00 sec) -- 返回系统当前日期: 年-月-日 mysql> SELECT CURDATE(); +------------+ | CURDATE() | +------------+ | 2021-02-12 | +------------+ row in set (0.00 sec) -- 返回系统当前时间: 时:分:秒 mysql> SELECT CURTIME(); +-----------+ | CURTIME() | +-----------+ | 09:47:54 | +-----------+ row in set (0.00 sec) -- 返回当前日期中的年份 mysql> SELECT YEAR(NOW()); +-------------+ | YEAR(NOW()) | +-------------+ | 2021 | +-------------+ row in set (0.00 sec) mysql> -- 返回当前日期中的月份 mysql> SELECT MONTH(NOW()); +--------------+ | MONTH(NOW()) | +--------------+ | 2 | +--------------+ row in set (0.00 sec) -- 返回当前日期中的日 mysql> SELECT DAY(NOW()); +------------+ | DAY(NOW()) | +------------+ | 12 | +------------+ row in set (0.01 sec)
函数名 | 描述 | 实例 |
---|---|---|
CURRENT_USER() | 返回当前用户 | SELECT CURRENT_USER(); |
IFNULL(v1,v2) | 如果 v1 的值不为 NULL,则返回 v1,否则返回 v2。 | SELECT IFNULL(null,'Hello Word') |
ISNULL(expression) | 判断表达式是否为 NULL | SELECT ISNULL(NULL); |
示例:
-- 返回当前用户 mysql> SELECT CURRENT_USER(); +----------------+ | CURRENT_USER() | +----------------+ | root@localhost | +----------------+ row in set (0.00 sec) -- 如果 v1 的值不为 NULL,则返回 v1,否则返回 v2。 mysql> SELECT IFNULL(null,'Hello Word'); +---------------------------+ | IFNULL(null,'Hello Word') | +---------------------------+ | Hello Word | +---------------------------+ row in set (0.00 sec) -- 判断表达式是否为 NULL mysql> SELECT ISNULL(NULL); +--------------+ | ISNULL(NULL) | +--------------+ | 1 | +--------------+ row in set (0.00 sec)