Delen via


| (Bitwise OR) (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Analytics-eindpunt in Microsoft FabricMagazijn in Microsoft FabricSQL-database in Microsoft Fabric Preview

Voert een bitsgewijze logische OR-bewerking uit tussen twee opgegeven gehele getallen, zoals vertaald naar binaire expressies binnen Transact-SQL instructies.

Transact-SQL syntaxis-conventies

Syntax

expression | expression  

Arguments

expression
Is een geldige expressie van de gegevenstypecategorie geheel getal, of de bit-, binaire of varbinaire gegevenstypen. expressie wordt behandeld als een binair getal voor de bitsgewijze bewerking.

Note

Slechts één expressie kan van het binaire of varbinaire gegevenstype zijn in een bitsgewijze bewerking.

Result Types

Retourneert een int als de invoerwaarden int zijn, een kleineint als de invoerwaarden klein zijn of een kleineint als de invoerwaarden klein zijn.

Remarks

De bitsgewijze | de operator voert een bitsgewijze logische OR uit tussen de twee expressies, waarbij elke bijbehorende bit voor beide expressies wordt gebruikt. De bits in het resultaat worden ingesteld op 1 als een of beide bits (voor de huidige bit die worden omgezet) in de invoerexpressies een waarde van 1 hebben; als geen van beide bit in de invoerexpressies 1 is, wordt de bit in het resultaat ingesteld op 0.

Als de linker- en rechterexpressies verschillende gegevenstypen voor gehele getallen hebben (de linkerexpressie is bijvoorbeeld klein en de rechterexpressieint), wordt het argument van het kleinere gegevenstype geconverteerd naar het grotere gegevenstype. In dit voorbeeld wordt de smallint-expressie geconverteerd naar een int.

Examples

In het volgende voorbeeld wordt een tabel met int-gegevenstypen gemaakt om de oorspronkelijke waarden weer te geven en wordt de tabel in één rij geplaatst.

CREATE TABLE bitwise (  
  a_int_value INT NOT NULL,  
  b_int_value INT NOT NULL);  
GO  
INSERT bitwise VALUES (170, 75);  
GO  

Met de volgende query wordt de bitsgewijze OR uitgevoerd op de kolommen a_int_value en b_int_value .

SELECT a_int_value | b_int_value  
FROM bitwise;  
GO  

Hier is het resultatenoverzicht.

-----------   
235           
  
(1 row(s) affected)  

De binaire weergave van 170 (a_int_value of A, hieronder) is 0000 0000 1010 1010. De binaire weergave van 75 (b_int_value of B, hieronder) is 0000 0000 0100 1011. Als u de bitsgewijze OR-bewerking uitvoert op deze twee waarden, wordt het binaire resultaat geproduceerd 0000 0000 1110 1011. Dit is decimaal 235.

(A | B)  
0000 0000 1010 1010  
0000 0000 0100 1011  
-------------------  
0000 0000 1110 1011  

See Also

Operators (Transact-SQL)
Bitwise Operators (Transact-SQL)
|= (Bitwise OR-toewijzing) (Transact-SQL)
Samengestelde operators (Transact-SQL)