Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
✅ Flusso di eventi dell'infrastruttura di Analisi ✅ di flusso di Azure
Esegue un'operazione NOT logica bit per bit su un valore intero.
Sintassi
~ expression
Argomenti
di espressione
Qualsiasi espressione valida dei tipi di dati bit o bigint. L'espressione viene considerata come un numero binario per l'operazione bit per bit.
Tipi restituiti
bit se il valore di input è bit.
bigint se il valore di input è bigint.
Osservazioni:
L'operatore ~ bit per bit esegue un NOT logico bit per bit sull'espressione, prendendo ogni bit a sua volta. Se expression ha un valore pari a 0, i bit nel set di risultati vengono impostati su 1; in caso contrario, il bit nel risultato viene cancellato su un valore pari a 0. In altre parole, quelli vengono modificati in zeri e gli zeri vengono modificati in quelli.
Ad esempio, la rappresentazione binaria di 170 è 0000 0000 1010 1010. L'esecuzione dell'operazione NOT bit per bit su questo valore produce il risultato binario 1111 1111 0101 0101, che è decimale -171.
(~170)
0000 0000 1010 1010
-------------------
1111 1111 0101 0101
Esempi
Con un set di dati di input comune:
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
)
Applicazione dell'operatore alle espressioni di bit :
SELECT
bit0,
bit1,
bitN,
~ bit0 AS NOT0,
~ bit1 AS NOT1,
~ bitN AS NOTnull
INTO bitNOT
FROM MyCTE
Restituisce:
| bit0 | bit1 | bitN | NOT0 | NOT1 | NOTnull |
|---|---|---|---|---|---|
| falso | vero | NULLO | vero | falso | NULLO |
Applicazione dell'operatore alle espressioni bigint :
SELECT
bigint0,
bigint1,
bigintN,
~ bigint0 AS NOT0,
~ bigint1 AS NOT1,
~ bigintN AS NOTnull,
~ 170 AS NOT170
INTO bigintNOT
FROM MyCTE
Restituisce:
| bit0 | bit1 | bitN | NOT0 | NOT1 | NOTnull | NOT170 |
|---|---|---|---|---|---|---|
| 0 | 1 | NULLO | -1 | -2 | NULLO | -171 |
Convalida dei tipi di output:
SELECT
GetType(~ bit0) AS NOTtype_bit,
GetType(~ bigint0) AS NOTtype_bigint
INTO typesNOT
FROM MyCTE
Restituisce:
| NOTtype_bit | NOTtype_bigint |
|---|---|
| pezzo | bigint |