Skip to content

Latest commit

 

History

History
136 lines (96 loc) · 2.55 KB

File metadata and controls

136 lines (96 loc) · 2.55 KB

运算符

运算符用于对值进行计算、比较和逻辑判断,是 SQL 表达式的重要组成部分。在 SELECTWHEREORDER BYUPDATE 等语句中都会频繁用到。

算术运算符

算术运算符主要用于数值计算。

常见算术运算符:

  • +:加法
  • -:减法
  • *:乘法
  • /:除法
  • %:取余

示例:

SELECT 1 + 2;
SELECT 10 - 3;
SELECT 4 * 5;
SELECT 20 / 4;
SELECT 10 % 3;

在表查询中也可以直接参与运算:

SELECT price, quantity, price * quantity AS total_amount
FROM order_item;

比较运算符

比较运算符用于判断两个值之间的关系,结果通常为真或假。

常见比较运算符:

  • =:等于
  • <>!=:不等于
  • >:大于
  • <:小于
  • >=:大于等于
  • <=:小于等于

示例:

SELECT * FROM user WHERE age = 18;
SELECT * FROM user WHERE age >= 18;
SELECT * FROM user WHERE status <> 'disabled';

除了这些基础比较符,实际查询中还经常结合以下关键字:

  • BETWEEN ... AND ...
  • IN (...)
  • LIKE
  • IS NULL

例如:

SELECT * FROM orders WHERE amount BETWEEN 100 AND 500;
SELECT * FROM user WHERE city IN ('北京', '上海');
SELECT * FROM article WHERE title LIKE 'MySQL%';
SELECT * FROM profile WHERE mobile IS NULL;

逻辑运算符

逻辑运算符用于组合多个条件。

常见逻辑运算符:

  • AND:并且
  • OR:或者
  • NOT:非

示例:

SELECT * FROM user
WHERE age >= 18 AND city = '上海';

SELECT * FROM user
WHERE city = '北京' OR city = '深圳';

SELECT * FROM user
WHERE NOT status = 'disabled';

在复杂条件中,建议适当使用括号,避免优先级造成理解偏差:

SELECT * FROM user
WHERE (city = '上海' OR city = '杭州')
  AND status = 'enabled';

位运算符

位运算符用于对整数的二进制位进行操作。

常见位运算符:

  • &:按位与
  • |:按位或
  • ^:按位异或
  • ~:按位取反
  • <<:左移
  • >>:右移

示例:

SELECT 6 & 3;
SELECT 6 | 3;
SELECT 6 ^ 3;
SELECT 6 << 1;
SELECT 6 >> 1;

位运算通常用于:

  • 权限标记
  • 状态位组合
  • 一些紧凑型整数编码场景

不过在普通业务 SQL 中,位运算不如比较运算和逻辑运算常见。

小结

算术运算符解决“怎么算”,比较运算符解决“怎么比”,逻辑运算符解决“怎么组合条件”,位运算符解决“怎么处理二进制位”。真正高频使用的仍然是比较运算符和逻辑运算符。