Freigeben über


ODER (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankVerwaltete Azure SQL-InstanzAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL-Analyseendpunkt in Microsoft FabricLagerhaus in Microsoft FabricSQL-Datenbank in Microsoft Fabric

Kombiniert zwei Bedingungen. Werden in einem Ausdruck mehrere logische Operatoren verwendet, werden OR-Operatoren nach AND-Operatoren ausgewertet. Sie können jedoch die Reihenfolge der Auswertung ändern, indem Sie Klammern verwenden.

Transact-SQL-Syntaxkonventionen

Syntax

boolean_expression OR boolean_expression  

Arguments

boolean_expression
Ein gültiger Ausdruck, der TRUE, FALSE oder UNKNOWN zurückgibt.

Ergebnistypen

Boolean

Ergebniswert

OR gibt TRUE zurück, falls der Wert für mindestens eine der Bedingungen TRUE ist.

Remarks

Die folgende Tabelle zeigt das Ergebnis des OR-Operators.

TRUE FALSE UNKNOWN
TRUE TRUE TRUE TRUE
FALSE TRUE FALSE UNKNOWN
UNKNOWN TRUE UNKNOWN UNKNOWN

Examples

Im folgenden Beispiel werden mithilfe der vEmployeeDepartmentHistory-Sicht die Namen der Quality Assurance-Mitarbeiter abgerufen, die in der Abend- oder Nachtschicht arbeiten. Ohne die Angabe der Klammern gibt die Abfrage Quality Assurance-Mitarbeiter zurück, die in der Abendschicht arbeiten, und alle Mitarbeiter, die in der Nachtschicht arbeiten.

-- Uses AdventureWorks  
  
SELECT FirstName, LastName, Shift   
FROM HumanResources.vEmployeeDepartmentHistory  
WHERE Department = 'Quality Assurance'  
   AND (Shift = 'Evening' OR Shift = 'Night');  

Hier sehen Sie das Ergebnis.

FirstName    LastName         Shift 
------------ ---------------- ------- 
Andreas      Berglund         Evening 
Sootha       Charncherngkha   Night

Beispiele: Azure Synapse Analytics und Analytics-Plattformsystem (PDW)

Im folgenden Beispiel werden die Namen aller Mitarbeiter abgerufen, deren BaseRate-Verdienst entweder kleiner als 20 ist oder deren HireDate-Datumswert auf den 1. Januar 2001 oder einen späteren Tag fällt.

-- Uses AdventureWorks  
  
SELECT FirstName, LastName, BaseRate, HireDate   
FROM DimEmployee  
WHERE BaseRate < 10 OR HireDate >= '2001-01-01';  

Siehe auch

Ausdrücke (Transact-SQL)
Integrierte Funktionen (Transact-SQL)
Operatoren (Transact-SQL)
SELECT (Transact-SQL)
WO (Transact-SQL)