Pular para o conteúdo principal
Documentos
FunçõesExpressõesKeywordsDeclaraçõesCláusulas

Função MOD() do MySQL

A função `MOD()` do MySQL calcula o restante da divisão de dois números. É comumente usado para operações que exigem aritmética de módulo, como determinar se um número é par ou ímpar.

Uso

A função `MOD()` é usada para encontrar o resto quando uma expressão numérica é dividida por outra. É particularmente útil em cenários que envolvem operações cíclicas ou determinação de divisibilidade.

MOD(N, M);

Nessa sintaxe, `N` é o dividendo e `M` é o divisor; a função retorna o restante de `N` dividido por `M`.

Exemplos

1. Operação básica de módulo

SELECT MOD(10, 3);

Essa consulta retorna `1`, que é o restante de `10` dividido por `3`.

2. Usando MOD() com dados de tabela

SELECT order_id, MOD(order_id, 2) AS remainder
FROM orders;

Esse exemplo calcula o restante de cada `order_id` dividido por `2`, o que é útil para identificar IDs de ordem pares ou ímpares.

3. Lógica condicional com MOD()

SELECT employee_id
FROM employees
WHERE MOD(employee_id, 5) = 0;

Este exemplo seleciona os `id_empregado` que são múltiplos de 5, usando a função `MOD()` para filtrar os resultados.

4. Manuseio de números negativos

SELECT MOD(-10, 3);

Essa consulta retorna `-1`, ilustrando como `MOD()` lida com dividendos negativos, retornando um resto com o mesmo sinal do dividendo. Da mesma forma, `SELECT MOD(10, -3);` retorna `1`, refletindo o sinal do divisor.

Dicas e práticas recomendadas

  • Use para operações cíclicas. Utilize `MOD()` para tarefas como distribuir itens uniformemente entre grupos.
  • Verifique se o divisor é zero. Certifique-se de que o divisor não seja zero para evitar erros na execução. A tentativa de `MOD(N, 0)` resulta em um valor `NULL`, pois a divisão por zero é indefinida.
  • Combine com outras funções. Combine `MOD()` com funções como `FLOOR()` ou `CEIL()` para operações aritméticas complexas.
  • Otimize o desempenho. Use `MOD()` nas cláusulas `WHERE` com cautela, pois isso pode afetar o desempenho da consulta se não for indexado corretamente. Considere a possibilidade de criar índices nas colunas envolvidas nas operações `MOD()` ou usar otimizações específicas do banco de dados para melhorar o desempenho.

Aprimoramento de SQL para iniciantes

Adquira as habilidades de SQL para interagir com seus dados e consultá-los.
Comece a aprender de graça