Поделиться через


OR (Transact-SQL)

Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure конечной точке аналитики платформы Аналитики Azure Synapse Analytics (PDW) в Microsoft Fabric Хранилище в базе данных Microsoft Fabric SQL в Microsoft Fabric

Объединяет два условия. Если в инструкции используется более одного логического оператора, то операторы OR вычисляются после операторов AND. Однако порядок выполнения можно изменить с помощью скобок.

Соглашения о синтаксисе Transact-SQL

Синтаксис

boolean_expression OR boolean_expression  

Аргументы

boolean_expression
Любое допустимое выражение, результатом которого являются значения TRUE, FALSE или UNKNOWN.

Типы результата

Boolean

Значение результата

Оператор OR возвращает значение TRUE, если любое из условий равно значению TRUE.

Замечания

В следующей таблице показан результат выполнения оператора OR.

TRUE FALSE НЕИЗВЕСТНО
TRUE TRUE TRUE TRUE
FALSE TRUE FALSE НЕИЗВЕСТНО
UNKNOWN TRUE НЕИЗВЕСТНО НЕИЗВЕСТНО

Примеры

В следующем примере представление 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 и система платформы аналитики (PDW)

В приведенном ниже примере извлекаются имена сотрудников со значением BaseRate меньше 20 или значением HireDate не раньше 1 января 2001 г.

-- 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)