MySQL的SQL运算符和函数是数据库查询和操作的重要组成部分。它们用于执行各种任务,包括数据检索、转换、比较和计算。
SELECT 2 + 3; -- 结果为5
SELECT 10 % 3; -- 结果为1
SELECT 10 > 5; -- 结果为真(1)
SELECT 'apple' <> 'banana'; -- 结果为真(1)
SELECT 1 = 1 AND 2 = 2; -- 结果为真(1)
SELECT NOT (1 = 0); -- 结果为真(1)
主要用于对二进制数进行操作,如位与、位或、位异或和位非等。
&
|
^
~
例如:SELECT 6 & 3; -- 结果为2
BETWEEN
, IN
, IS NULL
, IS NOT NULL
, LIKE
, REGEXP
等,用于更复杂的条件查询。例如:SELECT 'b' BETWEEN 'a' AND 'c'; -- 结果为真(1)
SELECT NULL IS NULL; -- 结果为真(1)
MySQL提供了大量的内置函数,用于执行各种任务。这些函数可以在查询中直接使用,并返回所需的结果。以下是一些常用的函数分类:
CONCAT()
, UPPER()
, LOWER()
, TRIM()
, SUBSTRING()
, LENGTH()
等,用于对字符串进行操作。例如:SELECT CONCAT('Hello', ' ', 'World'); -- 结果为"Hello World"
ABS()
, ROUND()
, CEIL()
, FLOOR()
, MOD()
等,用于数值计算。例如:SELECT ABS(-10); -- 结果为10
NOW()
, CURDATE()
, CURTIME()
, DATE_FORMAT()
, DATEDIFF()
, TIMESTAMPDIFF()
等,用于日期和时间的操作。例如:SELECT NOW(); -- 返回当前日期和时间
如 `COUNT()`, `SUM()`, `AVG()`, `MAX()`, `MIN()` 等,用于对数据进行统计和计算。
例如:sql
SELECT AVG(salary) FROM employees;
返回员工的平均工资
如 `CAST()`, `CONVERT()` 等,用于数据类型之间的转换。
例如:sql
SELECT CAST(age AS CHAR) FROM users;
将age字段从数值转换为字符类型
如 `IF()`, `CASE`, `COALESCE()` 等,用于根据条件返回值。
例如:
SELECT IF(age >= 18, 'Adult', 'Minor') FROM users;
根据年龄判断是否为成年人。