0Pricing
SQL Academy · Aula

Aritmética e operadores

Some, subtraia, multiplique e divida em SQL.

Aritmética e operadores é uma aula grátis de SQL Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de SQL Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de SQL Academy inclui 4 aulas no total.

Fazendo cálculos em SELECT

SQL não serve apenas para buscar linhas. Você pode calcular valores diretamente em uma consulta usando operadores aritméticos.

Nesta lição, você somará, subtrairá, multiplicará e dividirá usando colunas e literais, dará nomes aos resultados e entenderá como PostgreSQL determina o tipo de cada resultado.

Imagine uma tabela order_items com quantity e unit_price. Podemos calcular o total de uma linha sem tocar no código da aplicação.

SELECT quantity, unit_price, quantity * unit_price AS line_total
FROM order_items;

Os cinco operadores aritméticos

PostgreSQL oferece os operadores usuais:

  • + adição
  • - subtração
  • * multiplicação
  • / divisão
  • % módulo (resto)

Eles funcionam em colunas numéricas e literais, assim como em qualquer linguagem de programação. A consulta abaixo mostra cada um em ação.

SELECT
  10 + 3  AS sum,
  10 - 3  AS difference,
  10 * 3  AS product,
  10 / 3  AS quotient,
  10 % 3  AS remainder;

Precedência dos operadores

SQL segue a precedência matemática padrão: *, / e % têm precedência maior que + e -.

Use parênteses para deixar a intenção explícita e substituir a ordem padrão. As duas expressões abaixo produzem resultados muito diferentes.

SELECT
  2 + 3 * 4        AS without_parens,  -- 14
  (2 + 3) * 4      AS with_parens;     -- 20

Calculando um preço com desconto

Uma tarefa comum do mundo real: aplicar um desconto percentual. Multiplique o preço por (1 - discount_rate).

Aqui, discount_rate é armazenado como uma fração (0.15 = 15%). Os parênteses garantem que a subtração aconteça antes da multiplicação.

SELECT
  product_id,
  price,
  discount_rate,
  price * (1 - discount_rate) AS final_price
FROM products;

Aritmética entre colunas

Os operandos não precisam ser literais. Você pode combinar várias colunas em uma única expressão.

Abaixo, calculamos o lucro líquido por venda: receita menos custo, multiplicado pela quantidade vendida.

SELECT
  sale_id,
  (sale_price - cost) * quantity AS profit
FROM sales;

Dando nomes aos resultados com AS

Colunas calculadas recebem nomes gerados automaticamente, como ?column?, a menos que você lhes dê um nome alternativo. Use sempre AS para dar nomes legíveis.

Um nome alternativo também permite referenciar a coluna com mais clareza nas suas ferramentas e relatórios.

SELECT
  base_salary,
  base_salary * 0.10 AS bonus,
  base_salary + base_salary * 0.10 AS total_pay
FROM employees;

Aritmética em WHERE

Você também pode usar aritmética na cláusula WHERE, não apenas em SELECT.

Isso filtra os pedidos cujo total calculado excede 100. Observação: envolver uma coluna em uma operação matemática pode impedir o uso de índices; portanto, quando o desempenho for importante, prefira colunas sem transformações nos filtros.

SELECT order_id, quantity, unit_price
FROM order_items
WHERE quantity * unit_price > 100;

Os tipos dos resultados dependem das entradas

PostgreSQL infere o tipo do resultado a partir dos operandos. Inteiro + inteiro produz um inteiro; se algum dos lados for numérico ou de ponto flutuante, o resultado também será.

Isso é mais importante com a divisão, que abordaremos mais adiante. Por enquanto, observe como misturar tipos faz o resultado assumir um tipo mais abrangente.

SELECT
  pg_typeof(4 + 2)        AS int_type,      -- integer
  pg_typeof(4 + 2.0)      AS numeric_type,  -- numeric
  pg_typeof(4 * 1.5);                        -- numeric

O operador módulo

% retorna o resto da divisão inteira. Ele é útil para lógica cíclica, como “a cada N linhas” ou para verificar se os valores são pares ou ímpares.

Abaixo, encontramos os identificadores de produtos pares usando % 2 = 0.

SELECT product_id, name
FROM products
WHERE product_id % 2 = 0;

Atualizando valores com aritmética

Aritmética não se limita a SELECT. Você pode usá-la em UPDATE para ajustar valores armazenados.

Isso aumenta em 5% todos os preços de uma categoria. A expressão à direita é avaliada por linha.

UPDATE products
SET price = price * 1.05
WHERE category = 'electronics';

Cuidado com NULL

Qualquer operação aritmética que envolva NULL produz NULL, pois o resultado é desconhecido.

Se uma coluna puder estar ausente, envolva-a com COALESCE para fornecer um valor padrão antes de fazer cálculos.

SELECT
  base + NULL                     AS is_null,      -- NULL
  base + COALESCE(bonus, 0)       AS safe_total
FROM payroll;

Verificação rápida

Qual é o resultado da expressão 2 + 6 / 2 no PostgreSQL?

Recapitulação

Você pode calcular valores diretamente em SQL:

  • + - * / % são os operadores básicos
  • *, / e % têm precedência maior que + e -; use parênteses para deixar a intenção explícita
  • Dê nomes alternativos às colunas calculadas com AS
  • A aritmética funciona em SELECT, WHERE e UPDATE
  • O tipo do resultado segue os operandos, e qualquer operando NULL faz com que o resultado seja NULL

A seguir, veremos como arredondar e truncar esses resultados numéricos.

Perguntas Frequentes

A aula “Aritmética e operadores” é grátis?

Sim — o texto completo de “Aritmética e operadores” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de SQL Academy, atualize para CoddyKit PRO. O curso de SQL Academy inclui 4 aulas no total.

O que vou aprender em “Aritmética e operadores”?

Some, subtraia, multiplique e divida em SQL. Você pratica SQL Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar SQL Academy?

Nenhuma experiência prévia é necessária. SQL Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.

Quanto tempo leva a aula “Aritmética e operadores”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de SQL Academy?

Sim. Cada aula de SQL Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Aritmética e operadores
  2. Arredondamento e truncamento
  3. Divisão de inteiros versus decimais
  4. Funções matemáticas úteis
← Voltar para SQL Academy