OR (Transact-SQL)
适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Azure Synapse AnalyticsAnalytics Platform System (PDW)Microsoft Fabric 中的 SQL 分析终结点Microsoft Fabric 中的仓库
将两个条件组合起来。 在一个语句中使用多个逻辑运算符时,在 AND 运算符之后对 OR 运算符求值。 不过,使用括号可以更改求值的顺序。
语法
boolean_expression OR boolean_expression
注意
若要查看 SQL Server 2014 (12.x) 及更早版本的 Transact-SQL 语法,请参阅早期版本文档。
参数
boolean_expression
返回 TRUE、FALSE 或 UNKNOWN 的任何有效表达式。
结果类型
布尔值
结果值
当两个条件中的任何一个为 TRUE 时,OR 返回 TRUE。
备注
下表显示 OR 运算符的结果。
true | FALSE | UNKNOWN | |
---|---|---|---|
TRUE | TRUE | TRUE | TRUE |
FALSE | TRUE | FALSE | UNKNOWN |
未知 | true | UNKNOWN | UNKNOWN |
示例
以下示例使用 vEmployeeDepartmentHistory
视图检索加晚班或夜班的 Quality Assurance
人员的姓名。 如果省略括号,查询将返回加晚班的 Quality Assurance
雇员和所有加夜班的雇员。
-- Uses AdventureWorks
SELECT FirstName, LastName, Shift
FROM HumanResources.vEmployeeDepartmentHistory
WHERE Department = 'Quality Assurance'
AND (Shift = 'Evening' OR Shift = 'Night');
下面是结果集。
FirstName LastName Shift
------------ ---------------- -------
Andreas Berglund Evening
Sootha Charncherngkha Night
示例:Azure Synapse Analytics 和 Analytics Platform System (PDW)
以下示例检索所得的 BaseRate
少于 20 或 HireDate
在 2001 年 1 月 1 日或在此之后的员工的姓名。
-- Uses AdventureWorks
SELECT FirstName, LastName, BaseRate, HireDate
FROM DimEmployee
WHERE BaseRate < 10 OR HireDate >= '2001-01-01';
另请参阅
表达式(Transact-SQL)
内置函数 (Transact-SQL)
运算符 (Transact-SQL)
SELECT (Transact-SQL)
WHERE (Transact-SQL)
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈