Skip to content

SQL 表达式和函数

表达式类型

类型示例
算术SELECT age + 100 FROM user
字符串SELECT CONCAT(first, ' ', last) FROM user
逻辑WHERE age > 18 AND gender = 'Male'
条件CASE WHEN age < 18 THEN 'Minor' ELSE 'Adult' END
聚合SELECT AVG(salary) FROM user
日期SELECT YEAR(date_column) FROM user

常用函数

字符串函数

函数说明
CONCAT(s1, s2, ...)连接字符串
SUBSTRING(str, start, len)截取子串
UPPER(str) / LOWER(str)大小写转换
LENGTH(str)字符串长度

数值函数

函数说明
ABS(x)绝对值
ROUND(x, d)四舍五入到 d 位小数
CEILING(x) / FLOOR(x)向上/向下取整
RAND()随机数

日期函数

函数说明
NOW()当前日期时间
CURDATE()当前日期
CURTIME()当前时间
DATE_FORMAT(date, fmt)格式化日期
DATEDIFF(d1, d2)日期差值(天数)

条件函数

sql
IF(age >= 18, 'Adult', 'Minor')

CASE
  WHEN score >= 90 THEN 'A'
  WHEN score >= 60 THEN 'B'
  ELSE 'C'
END

聚合函数

函数说明
COUNT(*)行数统计
SUM(col)总和
AVG(col)平均值
MAX(col) / MIN(col)最大/最小值