SQL AND & OR 运算符详细讲解
在 SQL 中,AND
和 OR
运算符用于组合多个条件,以便根据这些条件过滤记录。
- AND 运算符:仅当所有条件都为真时,才会返回记录。
- OR 运算符:只要至少有一个条件为真,就会返回记录。
假设我们使用的是名为 "Websites" 的表,该表包含了不同的网站信息,包括它们的名称、URL、Alexa 排名、国家等。
AND 运算符实例
下面的 SQL 语句从 "Websites" 表中选取国家为 "CN" 且 Alexa 排名大于 50 的所有网站:
SELECT * FROM Websites
WHERE country='CN'
AND alexa > 50;
执行输出结果:
+----+--------------+---------------------------+-------+---------+
| id | name | url | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 2 | 淘宝 | https://www.taobao.com/ | 13 | CN |
| 3 | 111教程 | http://www.runoob.com/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 20 | CN |
+----+--------------+---------------------------+-------+---------+
这个查询返回了表中所有国家为 "CN" 且 Alexa 排名大于 50 的网站记录。
OR 运算符实例
下面的 SQL 语句从 "Websites" 表中选取国家为 "USA" 或者 "CN" 的所有网站:
SELECT * FROM Websites
WHERE country='USA'
OR country='CN';
执行输出结果:
+----+--------------+---------------------------+-------+---------+
| id | name | url | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1 | Google | https://www.google.com/ | 1 | USA |
| 2 | 淘宝 | https://www.taobao.com/ | 13 | CN |
| 3 | 111教程 | http://www.runoob.com/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 20 | CN |
| 5 | Facebook | https://www.facebook.com/ | 3 | USA |
+----+--------------+---------------------------+-------+---------+
这个查询返回了表中所有国家为 "USA" 或 "CN" 的网站记录。
结合 AND & OR
结合使用 AND
和 OR
运算符可以创建更复杂的查询条件。例如,如果你想选取国家为 "CN" 且 Alexa 排名大于 50,或者国家为 "USA" 的所有网站,可以使用以下 SQL 语句:
SELECT * FROM Websites
WHERE (country='CN' AND alexa > 50)
OR country='USA';
执行输出结果:
+----+--------------+---------------------------+-------+---------+
| id | name | url | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1 | Google | https://www.google.com/ | 1 | USA |
| 2 | 淘宝 | https://www.taobao.com/ | 13 | CN |
| 3 | 111教程 | http://www.11.com/ | 4689 | CN |
| 5 | Facebook | https://www.facebook.com/ | 3 | USA |
+----+--------------+---------------------------+-------+---------+
这个查询返回了表中所有国家为 "CN" 且 Alexa 排名大于 50,或者国家为 "USA" 的网站记录。
通过使用 AND
和 OR
运算符,你可以构建出复杂的查询条件,以满足各种数据检索需求。