No MariaDB,
DIV
executa a divisão inteira. Ele descarta do resultado da divisão qualquer parte fracionária à direita da vírgula.
Sintaxe
A sintaxe fica assim:
DIV
Onde o número para dividir está à esquerda e o número para dividi-lo está à direita.
Exemplo
Aqui está um exemplo:
SELECT 100 DIV 2;
Resultado:
+-----------+ | 100 DIV 2 | +-----------+ | 50 | +-----------+
Resultados fracionários
Como mencionado,
DIV
descarta do resultado da divisão qualquer parte fracionária à direita da vírgula. Exemplo:
SELECT 100 DIV 3;
Resultado:
+-----------+ | 100 DIV 3 | +-----------+ | 33 | +-----------+
Divisão por Zero
Se o
ERROR_FOR_DIVISION_BY_ZERO
O modo SQL não está definido, a divisão por zero retorna NULL
com um aviso. Se definida, a divisão por zero retorna um erro se tentar atualizar uma coluna com 1/0 e também retorna um aviso. Aqui está um exemplo de um
NULL
resultado:SELECT 100 DIV 0;
Resultado:
+-----------+ | 100 DIV 0 | +-----------+ | NULL | +-----------+ 1 row in set, 1 warning (0.001 sec)
Vamos verificar o aviso:
SHOW WARNINGS;
Resultado:
+---------+------+---------------+ | Level | Code | Message | +---------+------+---------------+ | Warning | 1365 | Division by 0 | +---------+------+---------------+
Operandos inválidos
O uso de operandos inválidos resulta em
NULL
com um aviso:SELECT 'One' DIV 'Two';
Resultado:
+-----------------+ | 'One' DIV 'Two' | +-----------------+ | NULL | +-----------------+ 1 row in set, 3 warnings (0.013 sec)
Confira os avisos:
SHOW WARNINGS;
Resultado:
+---------+------+------------------------------------------+ | Level | Code | Message | +---------+------+------------------------------------------+ | Warning | 1292 | Truncated incorrect DECIMAL value: 'One' | | Warning | 1292 | Truncated incorrect DECIMAL value: 'Two' | | Warning | 1365 | Division by 0 | +---------+------+------------------------------------------+