~ (NOT au niveau du bit) (Azure Stream Analytics)
Exécute une opération logique NOT au niveau du bit sur une valeur entière.
Syntaxe
~ expression
Arguments
expression
Expression valide des types de données bit ou bigint. L’expression est traitée comme un nombre binaire pour l’opération au niveau du bit.
Types de retour
bit si la valeur d’entrée est bit.
bigint si la valeur d’entrée est bigint.
Remarques
L’opérateur ~ au niveau du bit effectue un not logique au niveau du bit sur l’expression, en prenant chaque bit à son tour. Si l'expression a la valeur 0, les bits du jeu de résultats prennent la valeur 1 ; sinon, le bit résultant est mis à 0. En d'autres termes, les uns sont changés en zéros et les zéros sont changés en uns.
À titre d’illustration, la représentation binaire de 170 est 0000 0000 1010 1010. L’exécution de l’opération NOT au niveau du bit sur cette valeur produit le résultat binaire 1111 1111 0101 0101, qui est décimal -171.
(~170)
0000 0000 1010 1010
-------------------
1111 1111 0101 0101
Exemples
Avec un jeu de données d’entrée commun :
WITH MyCTE AS (
SELECT
CAST(0 AS BIT) AS bit0,
CAST(1 AS BIT) AS bit1,
CAST(NULL AS BIT) AS bitN,
CAST(0 AS BIGINT) AS bigint0,
CAST(1 AS BIGINT) AS bigint1,
CAST(NULL AS BIGINT) AS bigintN
FROM input
)
Application de l’opérateur sur les expressions de bits :
SELECT
bit0,
bit1,
bitN,
~ bit0 AS NOT0,
~ bit1 AS NOT1,
~ bitN AS NOTnull
INTO bitNOT
FROM MyCTE
Retourne les informations suivantes :
bit0 | bit1 | bitN | NOT0 | NOT1 | NOTnull |
---|---|---|---|---|---|
false | true | NULL | true | false | NULL |
Application de l’opérateur sur les expressions bigint :
SELECT
bigint0,
bigint1,
bigintN,
~ bigint0 AS NOT0,
~ bigint1 AS NOT1,
~ bigintN AS NOTnull,
~ 170 AS NOT170
INTO bigintNOT
FROM MyCTE
Retourne les informations suivantes :
bit0 | bit1 | bitN | NOT0 | NOT1 | NOTnull | NOT170 |
---|---|---|---|---|---|---|
0 | 1 | NULL | -1 | -2 | NULL | -171 |
Validation des types de sortie :
SELECT
GetType(~ bit0) AS NOTtype_bit,
GetType(~ bigint0) AS NOTtype_bigint
INTO typesNOT
FROM MyCTE
Retourne les informations suivantes :
NOTtype_bit | NOTtype_bigint |
---|---|
bit | bigint |
Voir aussi
- Opérateurs au niveau du bit (Azure Stream Analytics)
- & (AND au niveau du bit)(Azure Stream Analytics)
- | (OR au niveau du bit) (Azure Stream Analytics)
- ^ (OR exclusif au niveau du bit) (Azure Stream Analytics)
- Vue d’ensemble des types de données (Azure Stream Analytics)
- Fonctions de conversion (Azure Stream Analytics)
- Fonctions intégrées (Azure Stream Analytics)