Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analysplattformssystem (PDW)
SQL-analysslutpunkt i Microsoft Fabric
Lager i Microsoft Fabric
SQL-databas i Förhandsversion av Microsoft Fabric
Utför en bitvis logisk OR-åtgärd mellan två angivna heltalsvärden som översätts till binära uttryck i Transact-SQL-uttryck.
Transact-SQL syntaxkonventioner
Syntax
expression | expression
Arguments
expression
Är ett giltigt uttryck för datatypen heltal eller datatyperna bit, binär eller varbinär .
uttrycket behandlas som ett binärt tal för bitvis-åtgärden.
Note
Endast ett uttryck kan vara av antingen binär eller varbinär datatyp i en bitvis åtgärd.
Result Types
Returnerar en int om indatavärdena är int, en smallint om indatavärdena är småint eller en liten del om indatavärdena är småint.
Remarks
Bitvis | operatorn utför en bitvis logisk OR mellan de två uttrycken och tar varje motsvarande bit för båda uttrycken. Bitarna i resultatet är inställda på 1 om endera eller båda bitarna (för den aktuella biten som matchas) i indatauttrycken har värdet 1. om ingen bit i indatauttrycken är 1 anges biten i resultatet till 0.
Om vänster- och högeruttrycken har olika heltalsdatatyper (till exempel är det vänstra uttrycketsmallint och det högra uttrycket är int), konverteras argumentet för den mindre datatypen till den större datatypen. I det här exemplet konverteras smallint-uttrycket till en int.
Examples
I följande exempel skapas en tabell med int-datatyper för att visa de ursprungliga värdena och placerar tabellen i en rad.
CREATE TABLE bitwise (
a_int_value INT NOT NULL,
b_int_value INT NOT NULL);
GO
INSERT bitwise VALUES (170, 75);
GO
Följande fråga utför bitvis ELLER på kolumnerna a_int_value och b_int_value .
SELECT a_int_value | b_int_value
FROM bitwise;
GO
Här är resultatet.
-----------
235
(1 row(s) affected)
Den binära representationen av 170 (a_int_value eller A, nedan) är 0000 0000 1010 1010. Den binära representationen av 75 (b_int_value eller B, nedan) är 0000 0000 0100 1011. Om du utför åtgärden bitvis ELLER på dessa två värden genereras det binära resultatet 0000 0000 1110 1011, som är decimalt 235.
(A | B)
0000 0000 1010 1010
0000 0000 0100 1011
-------------------
0000 0000 1110 1011
See Also
Operators (Transact-SQL)
Bitvisoperatorer (Transact-SQL)
|= (bitvis ELLER tilldelning) (Transact-SQL)
Sammansatta operatorer (Transact-SQL)