Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Punkt końcowy analizy SQL w usłudze Microsoft Fabric
Hurtownia danych w usłudze Microsoft Fabric
Baza danych SQL w usłudze Microsoft Fabric
Wykonuje bitową operację logiczną AND między dwiema wartościami całkowitymi.
Transact-SQL konwencje składni
Syntax
expression & expression
Arguments
expression
Jest dowolnym prawidłowym wyrażeniem dowolnego typu danych kategorii typu danych całkowitych lub bitu albo binarnych lub varbinary typów danych.
Wyrażenie jest traktowane jako liczba binarna dla operacji bitowej.
Note
W operacji bitowej tylko jedno wyrażenie może być typu danych binarnych lub varbinary .
Typy wyników
int , jeśli wartości wejściowe są int.
smallint, jeśli wartości wejściowe są małe.
tinyint , jeśli wartości wejściowe są małe lub bitowe.
Remarks
Operator i bitowy wykonuje bitową wartość logiczną AND między dwoma wyrażeniami, biorąc każdy odpowiadający bit dla obu wyrażeń. Bity w wyniku są ustawione na 1, jeśli i tylko wtedy, gdy oba bity (dla bieżącego bitu rozpoznawanego) w wyrażeniach wejściowych mają wartość 1; w przeciwnym razie bit w wyniku ma wartość 0.
Jeśli wyrażenia po lewej i prawej mają różne typy danych całkowitych (na przykład wyrażenie po lewej stronie jest małe , a prawe wyrażenie jest int), argument mniejszego typu danych jest konwertowany na większy typ danych. W tym przypadku wyrażeniesmallint jest konwertowane na int.
Examples
Poniższy przykład tworzy tabelę przy użyciu typu danych int do przechowywania wartości i wstawia dwie wartości do jednego wiersza.
CREATE TABLE bitwise (
a_int_value INT NOT NULL,
b_int_value INT NOT NULL);
GO
INSERT bitwise VALUES (170, 75);
GO
To zapytanie wykonuje bitowe operacje AND między kolumnami a_int_value i b_int_value .
SELECT a_int_value & b_int_value
FROM bitwise;
GO
Oto zestaw wyników:
-----------
10
(1 row(s) affected)
Binarna reprezentacja wartości 170 (a_int_value lub A) to 0000 0000 1010 1010. Binarna reprezentacja wartości 75 (b_int_value lub B) to 0000 0000 0100 1011. Wykonanie operacji bitowej AND na tych dwóch wartościach powoduje wygenerowanie wyniku 0000 0000 0000 1010binarnego , czyli liczby dziesiętnej 10.
(A & B)
0000 0000 1010 1010
0000 0000 0100 1011
-------------------
0000 0000 0000 1010
Zobacz też
Wyrażenia (Transact-SQL)
Operatory (Transact-SQL)
Operatory bitowe (Transact-SQL)
&= (Bitowe i przypisywanie) (Transact-SQL)
Operatory złożone (Transact-SQL)