表达式和函数
来源:Node.js
表达式
MySQL表达式是一种计算式或逻辑式,可用于查询、更新和过滤数据,以及进行条件判断和计算
算数表达式
进行基本的加减乘除数学运算
1 | SELECT col1 + col2 as sum FROM table_name; |
字符串表达式
对字符串进行操作,例如连接、截取、替换
1 | SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM table_name; |
逻辑表达式
进行条件判断,返回布尔值
1 | SELECT * FROM table_name WHERE age > 18 AND gender = 'Male'; |
条件表达式
根据条件返回不同的结果
1 | SELECT CASE WHEN age < 18 THEN 'Minor' ELSE 'Adult' END AS age_group FROM table_name; |
聚合函数表达式
计算数据集的聚合值,例如求和、平均值、最大最小值
1 | SELECT AVG(salary) AS average_salary FROM table_name; |
时间和日期表达式
处理时间和日期数据,例如提取年月份、计算日期插值
1 | SELECT YEAR(date_column) AS year FROM table_name; |
函数
MySQL提供了大量的内置函数,用于在查询和操作数据时进行计算、转换和处理
字符串函数
CONCAT(str1, str2, ...)
:将多个字符串连接起来SUBSTRING(str, start, length)
:从字符串中提取子字符串LEFT(str, length)
:从左开始提取子字符串RIGHT(str, length)
:从右开始提取子字符串UPPER(str)
:将字符串转换为大写LOWER(str)
:将字符串转换为小写LENGTH(str)
:返回字符串的长度
数值函数
ABS(x)
:返回x的绝对值ROUND(x, d)
:将x四舍五入为d位小数CEILING(x)
:返回不小于x的最小整数FLOOR(x)
:返回不大于x的最大整数RAND()
:返回一个随机数
日期和时间函数
NOW()
:返回当前日期和时间CURDATE()
:返回当前日期CURTIME()
:返回当前时间DATE_FORMAT(date, format)
:将日期格式化为指定的格式DATEDIFF(date1, date2)
:计算两个日期之间的天数差
条件函数
IF(condition, value_if_true, value_if_false)
:根据条件返回不同的值CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ELSE result END
:根据条件返回不同的结果
聚合函数
COUNT(expr)
:计算满足条件的行数SUM(expr)
:计算表达式的总和AVG(expr)
:计算表达式的平均值MAX(expr)
:返回表达式的最大值MIN(expr)
:返回表达式的最小值
评论