Funções Binárias
O MariaDB utiliza aritimética BIGINT
(64bits) para operações binárias, assim estes operadores possuem uma faixa máxima de 64 bits.
|
Operador binário OR
mysql>
SELECT 29 | 15;
-> 31O resultado é um inteiro sem sinal de 64 bits.
&
Operado binário AND
mysql>
SELECT 29 & 15;
-> 13O resultado é um inteiro sem sinal de 64 bits.
^
Operado binário XOR
mysql>
SELECT 1 ^ 1;
-> 0 mysql>SELECT 1 ^ 0;
-> 1 mysql>SELECT 11 ^ 3;
-> 8O resultado é um inteiro sem sinal de 64 bits.
XOR
foi adicionado na versão 4.0.2.<<
Desloca um número
BIGINT
(muito grande) a esquerda:mysql>
SELECT 1 << 2;
-> 4O resultado é um inteiro sem sinal de 64 bits.
>>
Desloca um número
BIGINT
(muito grande) a direita:mysql>
SELECT 4 >> 2;
-> 1O resultado é um inteiro sem sinal de 64 bits.
~
Inverte todos os bits:
mysql>
SELECT 5 & ~1;
-> 4O resultado é um inteiro sem sinal de 64 bits.
BIT_COUNT(N)
Retorna o número de bits que são passados no argumento
N
:mysql>
SELECT BIT_COUNT(29);
-> 4