MySQL OR 运算符是逻辑运算符之一。通常,我们在 WHERE 子句中使用它来对 SELECT 语句返回的记录应用多个过滤器。此 OR 运算符返回的结果如下:
- 1,如果所有操作数都不是 NULL,并且其中任何一个操作数为非零。
- 0,如果所有操作数都不是 NULL,并且它们都是零。
- NULL,如果其中一个操作数为 NULL,而其余操作数为零,否则为 1。
让我们看看如何在 WHERE 子句中使用逻辑运算符 OR 来过滤数据。为了说明这一点,我们将使用下面显示的数据。

MySQL OR 运算符命令提示符
在此 OR 示例中,我们传递了 1、0 和 NULL 值,并进行了不同的组合。此示例可帮助您理解 OR 运算符背后的真值表。
SELECT 0 OR 0; SELECT 1 OR 1; SELECT 1 OR 0; SELECT 1 OR NULL; SELECT 0 OR NULL; SELECT NULL OR NULL;

MySQL OR 运算符示例
OR 在 WHERE 子句中测试多个条件。如果任一条件为 TRUE,则显示记录。
USE company;
SELECT CustID,
First_Name, Last_Name,
Education, Profession,
Yearly_Income, Sales
FROM customers
WHERE Education = 'High School'
OR Profession = 'Developer';
上面的 SELECT 语句从 MySQL Customers 表中检索所有教育程度为 High School 或职业为 Developer 的客户(WHERE 子句)。

您也可以在三个或四个条件之间使用 OR 运算符。让我们将其应用于三个条件。
USE company;
SELECT CustID,
First_Name, Last_Name,
Education, Profession,
Yearly_Income, Sales
FROM customers
WHERE Education = 'High School'
OR Profession = 'Developer'
OR Yearly_Income > 90000;
上述语句从 Customer 表中检索客户,其教育程度为 High School,或职业为 Developer,或年收入大于 90000。
