算术运算符:
- +:加法
SELECT 5 + 3;
- -:减法
SELECT 7 - 4;
- *:乘法
SELECT 6 * 2;
- /:除法
SELECT 10 / 3;
- %:取模(余数)
SELECT 7 % 3;
字符串函数:
- CONCAT(str1, str2, …):连接两个或多个字符串
SELECT CONCAT('Hello', ' ', 'World');
- LENGTH(str):返回字符串的长度
SELECT LENGTH('Hello World');
- SUBSTRING(str, start, length):返回字符串的子串
SELECT SUBSTRING('Hello World', 1, 5);
- REPLACE(str, old_value, new_value):用新值替换字符串中的旧值
SELECT REPLACE('Hello World', 'World', 'Universe');
- LOWER(str):将字符串转换为小写
SELECT LOWER('Hello World');
- UPPER(str):将字符串转换为大写
SELECT UPPER('Hello World');
日期和时间函数:
- NOW():返回当前日期和时间
SELECT NOW();
- CURDATE():返回当前日期
SELECT CURDATE();
- CURTIME():返回当前时间
SELECT CURTIME();
- DATE_FORMAT(date, format):按照指定格式格式化日期
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s');
- DATE_ADD(date, INTERVAL value unit):在给定日期上添加时间间隔
SELECT DATE_ADD(CURDATE(), INTERVAL 5 DAY);
- DATEDIFF(date1, date2):返回两个日期之间的天数差异
SELECT DATEDIFF(CURDATE(), '2023-09-10');
聚合函数:
- SUM(column):计算列的总和
SELECT SUM(salary) FROM employees;
- COUNT(column):计算列的行数(非NULL值)
SELECT COUNT(name) FROM employees;
- AVG(column):计算列的平均值
SELECT AVG(salary) FROM employees;
- MAX(column):返回列的最大值
SELECT MAX(salary) FROM employees;
- MIN(column):返回列的最小值
SELECT MIN(salary) FROM employees;
条件表达式:
- IF(condition, true_value, false_value):根据条件返回真值或假值
SELECT IF(salary > 5000, 'High Salary', 'Low Salary') FROM employees;
- CASE 表达式:根据条件执行不同的操作(类似于 switch-case)
SELECT
CASE
WHEN salary <= 2000 THEN 'Low Salary'
WHEN salary > 2000 AND salary <= 4000 THEN 'Medium Salary'
ELSE 'High Salary'
END AS salary_level
FROM employees;
其他常见函数:
- ABS(value):返回值的绝对值
SELECT ABS(-5);
- RAND():返回随机数
SELECT RAND();
- ROUND(value, decimal_places):按照指定的小数位数对值进行四舍五入
SELECT ROUND(3.14159, 2);
- PI():返回圆周率π的值这些只是MySQL中的一些常见表达式。
SELECT PI();