SQL AND OR 运算符
and 和 or 运算符用于查询符合一个以上条件的数据库记录。
and 运算符表示同时符合两个条件的记录。
or 运算符表示符合其中任何一个条件的记录。
样本数据库
在本教程中,我们将使用 yapf 样本数据库。
下面是选自 "websites" 表的数据:
+----+--------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+--------------+---------------------------+-------+---------+ | 1 | google | https://www.google.cm/ | 1 | usa | | 2 | 淘宝 | https://www.taobao.com/ | 13 | cn | | 3 | 硕编程 | http://www.yapf.com/ | 4689 | cn | | 4 | 微博 | http://weibo.com/ | 20 | cn | | 5 | facebook | https://www.facebook.com/ | 3 | usa | +----+--------------+---------------------------+-------+---------+
1. and 运算符范例
下面的 sql 语句从 "websites" 表中选取国家为 "cn" 且alexa排名大于 "50" 的所有网站:
select * from websites where country='cn' and alexa > 50; 执行结果 +----+--------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+--------------+---------------------------+-------+---------+ | 3 | 硕编程 | http://www.yapf.com/ | 4689 | cn | +----+--------------+---------------------------+-------+---------+
2. or 运算符范例
下面的 sql 语句从 "websites" 表中选取国家为 "usa" 或者 "cn" 的所有客户:
select * from websites where country='usa' or country='cn'; 执行结果 +----+--------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+--------------+---------------------------+-------+---------+ | 1 | google | https://www.google.cm/ | 1 | usa | | 2 | 淘宝 | https://www.taobao.com/ | 13 | cn | | 3 | 硕编程 | http://www.yapf.com/ | 4689 | cn | | 4 | 微博 | http://weibo.com/ | 20 | cn | | 5 | facebook | https://www.facebook.com/ | 3 | usa | +----+--------------+---------------------------+-------+---------+
3. and 和 or 混合使用范例
您也可以把 and 和 or 结合起来(使用小括号来组成复杂的表达式)。
下面的 sql 语句从 "websites" 表中选取 alexa 排名大于 "15" 且国家为 "cn" 或 "usa" 的所有网站:
select * from websites where alexa > 15 and (country='cn' or country='usa'); 执行结果: +----+--------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+--------------+---------------------------+-------+---------+ | 3 | 硕编程 | http://www.yapf.com/ | 4689 | cn | | 4 | 微博 | http://weibo.com/ | 20 | cn | +----+--------------+---------------------------+-------+---------+