Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
✅ Azure Stream Analytics ✅ Fabric Eventstream
Executa uma operação NOT lógica bit a bit em um valor inteiro.
Sintaxe
~ expression
Argumentos
expressão
É qualquer expressão válida dos tipos de dados bit ou bigint. A expressão é tratada como um número binário para a operação bitwise.
Tipos de devolução
bit se o valor de entrada for bit.
bigint se o valor de entrada for bigint.
Observações
O operador ~ bit a bit executa um NOT lógico bit a bit na expressão, tomando cada bit por vez. Se a expressão tiver um valor de 0, os bits no conjunto de resultados serão definidos como 1; caso contrário, o bit no resultado é limpo para um valor de 0. Em outras palavras, uns são alterados para zeros e zeros são alterados para uns.
Para ilustração, a representação binária de 170 é 0000 0000 1010 1010. Executar a operação bit a bit NOT nesse valor produz o resultado binário 1111 1111 0101 0101, que é decimal -171.
(~170)
0000 0000 1010 1010
-------------------
1111 1111 0101 0101
Exemplos
Com um conjunto de dados de entrada comum:
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
)
Aplicando o operador em expressões de bits :
SELECT
bit0,
bit1,
bitN,
~ bit0 AS NOT0,
~ bit1 AS NOT1,
~ bitN AS NOTnull
INTO bitNOT
FROM MyCTE
Devoluções:
| bit0 | bit1 | bitN | NOT0 | NOT1 | NOTnull |
|---|---|---|---|---|---|
| falso | verdadeiro | NULO | verdadeiro | falso | NULO |
Aplicando o operador em expressões bigint :
SELECT
bigint0,
bigint1,
bigintN,
~ bigint0 AS NOT0,
~ bigint1 AS NOT1,
~ bigintN AS NOTnull,
~ 170 AS NOT170
INTO bigintNOT
FROM MyCTE
Devoluções:
| bit0 | bit1 | bitN | NOT0 | NOT1 | NOTnull | NOT170 |
|---|---|---|---|---|---|---|
| 0 | 1 | NULO | -1 | -2 | NULO | -171 |
Validando os tipos de saída:
SELECT
GetType(~ bit0) AS NOTtype_bit,
GetType(~ bigint0) AS NOTtype_bigint
INTO typesNOT
FROM MyCTE
Devoluções:
| NOTtype_bit | NOTtype_bigint |
|---|---|
| pouco | bigint |