Código SQL copiado para a área de transferência
Esta lição sobre funções matemáticas comuns em SQL oferece uma visão completa das principais operações numéricas para consultas em banco de dados. Com explicações claras e exemplos práticos usando o banco Sakila, você aprenderá a utilizar funções como ABS, CEIL, FLOOR, ROUND, POWER, SQRT, MOD, SIGN, GREATEST, LEAST e RAND. Dominar essas funções matemáticas do SQL vai ajudar você a analisar, transformar e calcular dados numéricos de forma eficiente em seus projetos SQL. Ideal para iniciantes e para quem deseja aprimorar suas habilidades em SQL.
RU EN

Aula 3.3: Funções Matemáticas Comuns em SQL

As funções matemáticas em SQL são usadas para realizar vários cálculos com dados numéricos. Elas permitem arredondar valores, encontrar valores mínimos e máximos, calcular somas, médias, restos e muito mais. Esta aula aborda as funções matemáticas mais utilizadas com exemplos baseados no banco de dados Sakila.

Funções Matemáticas Comuns

ABS() — Retorna o valor absoluto de um número.

Sintaxe:

ABS(number)

Exemplo:

SELECT ABS(amount - 5) AS abs_difference
FROM payment
LIMIT 3;

Resultado: Retorna a diferença absoluta entre o valor de amount e 5.

CEIL() / CEILING() — Arredonda um número para cima até o inteiro mais próximo.

Sintaxe:

CEIL(number)
CEILING(number)

Exemplo:

SELECT CEIL(amount) AS rounded_up
FROM payment
LIMIT 3;

Resultado: Arredonda o valor de amount para cima até o inteiro mais próximo.

FLOOR() — Arredonda um número para baixo até o inteiro mais próximo.

Sintaxe:

FLOOR(number)

Exemplo:

SELECT FLOOR(amount) AS rounded_down
FROM payment
LIMIT 3;

Resultado: Arredonda o valor de amount para baixo até o inteiro mais próximo.

ROUND() — Arredonda um número para o número especificado de casas decimais.

Sintaxe:

ROUND(number, decimals)

Exemplo:

SELECT ROUND(amount, 1) AS rounded_amount
FROM payment
LIMIT 3;

Resultado: Arredonda o valor de amount para uma casa decimal.

POWER() / POW() — Eleva um número a uma potência.

Sintaxe:

POWER(number, exponent)
POW(number, exponent)

Exemplo:

SELECT POWER(amount, 2) AS squared_amount
FROM payment
LIMIT 3;

Resultado: Eleva o valor de amount ao quadrado.

SQRT() — Retorna a raiz quadrada de um número.

Sintaxe:

SQRT(number)

Exemplo:

SELECT SQRT(amount) AS sqrt_amount
FROM payment
LIMIT 3;

Resultado: Retorna a raiz quadrada do valor de amount.

MOD() — Retorna o resto da divisão de um número por outro.

Sintaxe:

MOD(dividend, divisor)

Exemplo:

SELECT MOD(payment_id, 5) AS mod_result
FROM payment
LIMIT 3;

Resultado: Retorna o resto da divisão de payment_id por 5.

SIGN() — Retorna o sinal de um número (-1, 0 ou 1).

Sintaxe:

SIGN(number)

Exemplo:

SELECT SIGN(amount - 5) AS sign_value
FROM payment
LIMIT 3;

Resultado: Retorna -1 se a diferença for negativa, 0 se for zero, 1 se for positiva.

GREATEST() — Retorna o maior dos valores fornecidos (MySQL, PostgreSQL).

Sintaxe:

GREATEST(value1, value2, ...)

Exemplo:

SELECT GREATEST(amount, 5) AS max_value
FROM payment
LIMIT 3;

Resultado: Retorna o maior dos dois valores: amount ou 5.

LEAST() — Retorna o menor dos valores fornecidos (MySQL, PostgreSQL).

Sintaxe:

LEAST(value1, value2, ...)

Exemplo:

SELECT LEAST(amount, 5) AS min_value
FROM payment
LIMIT 3;

Resultado: Retorna o menor dos dois valores: amount ou 5.

RAND() — Retorna um número aleatório entre 0 e 1.

Sintaxe:

RAND()

Exemplo:

SELECT RAND() AS random_value
FROM payment
LIMIT 3;

Resultado: Retorna um número aleatório para cada linha.

Aplicações Práticas

  1. Arredondar valores de pagamento: Use ROUND(amount, 0) para arredondar o valor para o inteiro mais próximo.

  2. Encontrar pagamentos com resto: Use MOD(payment_id, 2) para encontrar pagamentos pares e ímpares.

  3. Calcular raízes quadradas: Use SQRT(amount) para analisar a distribuição dos pagamentos.

  4. Comparar valores: Use GREATEST() e LEAST() para selecionar o valor máximo ou mínimo de várias colunas.

Principais Conclusões desta Aula

As funções matemáticas do SQL permitem realizar cálculos, analisar e transformar dados numéricos. Domine essas funções para trabalhar de forma eficaz com números em suas consultas SQL. Pratique com exemplos do banco de dados Sakila para reforçar seus conhecimentos.