Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
✅Eventstream prostředků infrastruktury Azure Stream Analytics ✅
Provede bitové logické NE operace s celočíselnou hodnotou.
Syntaxe
~ expression
Argumenty
výrazu
Je jakýkoli platný výraz datového typu bit nebo bigint. Výraz se považuje za binární číslo pro bitové operace.
Návratové typy
bit , pokud je vstupní hodnota bit.
bigint , pokud je vstupní hodnota bigint.
Poznámky
Bitový operátor ~ provádí bitové logické NE u výrazu, přičemž každý bit zase přebírá. Pokud má výraz hodnotu 0, bity v sadě výsledků jsou nastaveny na hodnotu 1; v opačném případě se bit ve výsledku vymaže na hodnotu 0. Jinými slovy se změní na nuly a nuly se změní na nuly.
Na obrázku je binární reprezentace 170 0000 0000 1010 1010. Provádění bitové OPERACE NOT na této hodnotě vytvoří binární výsledek 1111 1111 0101 0101, což je desítkové -171.
(~170)
0000 0000 1010 1010
-------------------
1111 1111 0101 0101
Příklady
S běžnou vstupní datovou sadou:
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
)
Použití operátoru u bitových výrazů:
SELECT
bit0,
bit1,
bitN,
~ bit0 AS NOT0,
~ bit1 AS NOT1,
~ bitN AS NOTnull
INTO bitNOT
FROM MyCTE
Návraty:
| bit0 | bit1 | bitN | NOT0 | NOT1 | NOTnull |
|---|---|---|---|---|---|
| Nepravda | pravda | NULA | pravda | Nepravda | NULA |
Použití operátoru u výrazů bigint :
SELECT
bigint0,
bigint1,
bigintN,
~ bigint0 AS NOT0,
~ bigint1 AS NOT1,
~ bigintN AS NOTnull,
~ 170 AS NOT170
INTO bigintNOT
FROM MyCTE
Návraty:
| bit0 | bit1 | bitN | NOT0 | NOT1 | NOTnull | NOT170 |
|---|---|---|---|---|---|---|
| 0 | 1 | NULA | -1 | -2 | NULA | -171 |
Ověřování typů výstupu:
SELECT
GetType(~ bit0) AS NOTtype_bit,
GetType(~ bigint0) AS NOTtype_bigint
INTO typesNOT
FROM MyCTE
Návraty:
| NOTtype_bit | NOTtype_bigint |
|---|---|
| trochu | bigint |