Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL Analytics-eindpunt in Microsoft Fabric
Magazijn in Microsoft Fabric
SQL-database in Microsoft Fabric
Voert een bitwise logische exclusieve OR bewerking tussen twee gehele getallen uit.
Transact-SQL syntaxis-conventies
Syntax
expression ^ expression
Arguments
expression
Elke geldige expressie van een van de gegevenstypen van de categorie geheel getal, of de bit, of de 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.
Retourtypen
int als de invoerwaarden int zijn.
smallint als de invoerwaarden klein zijn.
kleineint als de invoerwaarden klein zijn.
Remarks
De ^ bitwise-operator voert een bitwise logische exclusieve uit OR tussen de twee expressies, waarbij elke bijbehorende bit voor beide expressies wordt gebruikt. De bits in het resultaat worden ingesteld 1 op als een van de (maar niet beide) bits (voor de huidige bit die wordt omgezet) in de invoerexpressies een waarde hebben van 1. Als beide bits of beide bits zijn 01, wordt de bit in het resultaat gewist tot een waarde van 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 geval wordt de smallint-expressie geconverteerd naar een int.
Examples
In het volgende voorbeeld wordt een tabel gemaakt met behulp van het int-gegevenstype om de oorspronkelijke waarden op te slaan en twee waarden in één rij in te voegen.
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 exclusieve query OR uitgevoerd op de a_int_value en b_int_value kolommen.
SELECT a_int_value ^ b_int_value
FROM bitwise;
GO
Hier is het resultatenoverzicht.
-----------
225
De binaire weergave van 170 (a_int_value of A) is 0000 0000 1010 1010. De binaire weergave van 75 (b_int_value of B) is 0000 0000 0100 1011. Het uitvoeren van de bitsgewijze exclusieve OR bewerking op deze twee waarden produceert het binaire resultaat 0000 0000 1110 0001, dat decimaal 225 is.
(A ^ B)
0000 0000 1010 1010
0000 0000 0100 1011
-------------------
0000 0000 1110 0001