在 SQL 语句中,AND 和 OR 是两个常用的逻辑运算符,用于组合条件,从而筛选出满足特定条件的数据。
AND 运算符
AND 运算符表示“并且”的关系,当两个或多个条件都满足时,才返回真值。例如,以下查询查找购买了产品 A 且购买金额超过 100 美元的客户:
sql
SELECT * FROM customers
WHERE product_id = 'A' AND order_total > 100;
OR 运算符
OR 运算符表示“或者”的关系,当至少一个条件满足时,就返回真值。例如,以下查询查找购买了产品 A 或产品 B 的客户:
sql
SELECT * FROM customers
WHERE product_id = 'A' OR product_id = 'B';
AND 和 OR 同时使用
AND 和 OR 运算符可以组合使用以创建更复杂的条件。例如,以下查询查找购买了产品 A 且购买金额超过 100 美元,或者购买了产品 B 的客户:
sql
SELECT * FROM customers
WHERE (product_id = 'A' AND order_total > 100) OR product_id = 'B';
在上面的示例中,括号用于分组 AND 条件,确保它首先执行。否则,查询将使用 OR 运算符首先查找购买了产品 B 的客户,然后在这些结果中查找购买金额超过 100 美元的客户。
优先级
AND 运算符的优先级高于 OR 运算符。这意味着,在没有括号的情况下,AND 条件将首先执行。可以通过使用括号来更改运算符的优先级。
AND 和 OR 运算符是 SQL 中强大的工具,可用于创建复杂的查询条件。通过理解它们的优先级和组合使用方式,您可以精确筛选数据,以获取所需的见解。