函数
MySQL 提供了大量的内置函数,这些函数可以在 SQL 查询中用来处理数据、转换数据类型、进行字符串操作、日期和时间计算等。
以下是一些常用的 MySQL 函数:
1. 字符串函数
CONCAT(str1, str2, ...)
: 连接两个或多个字符串。LENGTH(str)
: 返回字符串的长度。LOWER(str)
: 将字符串转换为小写。UPPER(str)
: 将字符串转换为大写。TRIM([BOTH | LEADING | TRAILING] remstr FROM str)
: 去除字符串首尾的空格或指定字符。SUBSTRING(str, pos, len)
: 从字符串中提取子字符串。REPLACE(str, from_str, to_str)
: 替换字符串中的子字符串。
2. 数值函数
ABS(x)
: 返回 x 的绝对值。CEIL(x) 或 CEILING(x)
: 返回大于或等于 x 的最小整数。FLOOR(x)
: 返回小于或等于 x 的最大整数。ROUND(x, d)
: 对 x 进行四舍五入,保留 d 位小数。MOD(n, m)
: 返回 n 除以 m 的余数。RAND()
: 返回一个 0 到 1 之间的随机数。
3. 日期和时间函数
NOW()
: 返回当前日期和时间。CURDATE()
: 返回当前日期。CURTIME()
: 返回当前时间。DATE_FORMAT(date, format)
: 按指定的格式显示日期/时间值。DATEDIFF(date1, date2)
: 返回两个日期之间的天数。DAY(date)
: 返回日期值中的天数(1 到 31)。MONTH(date)
: 返回日期值中的月份(1 到 12)。YEAR(date)
: 返回日期值中的年份(四位数)。
4. 聚合函数
COUNT(expr)
: 返回匹配指定条件的行数。SUM(expr)
: 返回指定列的总和。AVG(expr)
: 返回指定列的平均值。MAX(expr)
: 返回指定列的最大值。MIN(expr)
: 返回指定列的最小值。GROUP_CONCAT(expr)
: 返回带有由分隔符分隔的值的字符串结果。
5. 控制流函数
IF(expr, v_if_true, v_if_false)
: 如果 expr 为真,则返回 v_if_true,否则返回 v_if_false。CASE
: 条件表达式,允许在 SQL 查询中进行更复杂的条件判断。
6. 加密和哈希函数
MD5(str)
: 返回字符串的 MD5 哈希值。SHA1(str)
: 返回字符串的 SHA-1 哈希值。PASSWORD(str)
: 返回字符串的加密值(在 MySQL 5.7 及更早版本中用于密码存储,但在后续版本中不推荐使用)。
7. 其他常用函数
LAST_INSERT_ID()
: 返回最后一个 INSERT 或 UPDATE 语句为 AUTO_INCREMENT 列生成的 ID 值。
COALESCE(value1, value2, ...)
: 返回参数列表中的第一个非 NULL 值。
NULLIF(expr1, expr2)
: 如果 expr1 等于 expr2,则返回 NULL,否则返回 expr1。
这只是 MySQL 函数的一小部分示例,MySQL 还提供了许多其他函数,用于处理各种数据类型和场景。你可以通过查阅 MySQL 的官方文档来获取更详细的信息和示例。