No MariaDB, o operador módulo (
%
) retorna a operação do módulo. Ele retorna o restante de seu primeiro argumento dividido por seu segundo argumento. Sintaxe
A sintaxe fica assim:
N % M
Isso retorna o restante de
N
dividido por M
. A operação também pode ser feita usando o
MOD
palavra-chave e o MOD()
função. Portanto, você pode usar as seguintes sintaxes para obter o mesmo resultado:MOD(N,M)
N MOD M
Exemplo
Aqui está um exemplo para demonstrar o operador módulo:
SELECT 9 % 2;
Resultado:
+-------+ | 9 % 2 | +-------+ | 1 | +-------+
Aqui estão mais alguns:
SELECT
8 % 2,
134 % 27,
9 % 5,
9 % 10;
Resultado:
+-------+----------+-------+--------+ | 8 % 2 | 134 % 27 | 9 % 5 | 9 % 10 | +-------+----------+-------+--------+ | 0 | 26 | 4 | 9 | +-------+----------+-------+--------+
Comparado com MOD
&MOD()
Aqui está um exemplo que compara as sintaxes entre a função e os operadores:
SELECT
9 % 2,
9 MOD 2,
MOD(9, 2);
Resultado:
+-------+---------+-----------+ | 9 % 2 | 9 MOD 2 | MOD(9, 2) | +-------+---------+-----------+ | 1 | 1 | 1 | +-------+---------+-----------+
Argumentos não numéricos
Aqui está um exemplo do que acontece quando fornecemos argumentos não numéricos:
SELECT 'Bird' % 'Dog';
Resultado:
+----------------+ | 'Bird' % 'Dog' | +----------------+ | NULL | +----------------+ 1 row in set, 3 warnings (0.000 sec)
Vejamos o aviso:
SHOW WARNINGS;
Resultado:
+---------+------+------------------------------------------+ | Level | Code | Message | +---------+------+------------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: 'Bird' | | Warning | 1292 | Truncated incorrect DOUBLE value: 'Dog' | | Warning | 1365 | Division by 0 | +---------+------+------------------------------------------+
Operandos nulos
O resultado é
null
se um dos operandos for null
:SELECT
null % 2,
134 % null,
null % null;
Resultado:
+----------+------------+-------------+ | null % 2 | 134 % null | null % null | +----------+------------+-------------+ | NULL | NULL | NULL | +----------+------------+-------------+