- Catégories :
BITNOT¶
Renvoie la négation au niveau du bit d’une expression numérique.
- Alias :
BIT_NOT
Syntaxe¶
BITNOT( <expr> )
Arguments¶
expr
Cette expression doit correspondre à un type de données pouvant être converti en
INTEGER
.
Renvoie¶
Renvoie un entier qui représente la négation au niveau du bit de l’expression d’entrée.
Notes sur l’utilisation¶
Si le type de données de l’argument est numérique, mais pas
INTEGER
(par exemple, FLOAT, DECIMAL, etc.), l’argument est alors converti enINTEGER
.Si le type de données de l’argument est une chaîne (par exemple,
VARCHAR
), l’argument est alors converti enINTEGER
si possible. Par exemple, la chaîne « 12,3 » est convertie en 12. Si la valeur ne peut pas être convertie enINTEGER
, elle est traitée comme NULL.Si l’argument est NULL, le résultat sera NULL.
Exemples¶
Cet exemple montre comment utiliser BITNOT
:
Créez une table et des données simples :
CREATE TABLE bits (ID INTEGER, bit1 INTEGER, bit2 INTEGER);INSERT INTO bits (ID, bit1, bit2) VALUES ( 11, 1, 1), -- Bits are all the same. ( 24, 2, 4), -- Bits are all different. ( 42, 4, 2), -- Bits are all different. ( 1624, 16, 24), -- Bits overlap. (65504, 0, 65504), -- Lots of bits (all but the low 6 bits) ( 0, NULL, NULL) -- No bits ;Exécutez la requête :
SELECT bit1, bit2, BITNOT(bit1), BITNOT(bit2) FROM bits ORDER BY bit1;Sortie :
+------+-------+--------------+--------------+ | BIT1 | BIT2 | BITNOT(BIT1) | BITNOT(BIT2) | |------+-------+--------------+--------------| | 0 | 65504 | -1 | -65505 | | 1 | 1 | -2 | -2 | | 2 | 4 | -3 | -5 | | 4 | 2 | -5 | -3 | | 16 | 24 | -17 | -25 | | NULL | NULL | NULL | NULL | +------+-------+--------------+--------------+