🧚 Escute! O Beekeeper Studio é uma GUI de banco de dados rápida, moderna e open source Baixar
14 de fevereiro de 2024 Por Matthew Rathbone

Introdução

Subtrair valores é uma operação fundamental em qualquer banco de dados SQL, incluindo o SQLite. Entender como fazer subtrações e usá-las nas suas consultas pode melhorar muito a manipulação e a análise de dados. Este guia quer desmistificar a subtração no SQLite, com exemplos claros e explicando a lógica por trás deles. Seja para refinar dados financeiros, calcular diferenças de tempo ou só fazer contas, dominar a subtração no SQLite vai levar seu SQL a outro nível.

Noções básicas de subtração no SQLite

O SQLite, como outros bancos de dados SQL, suporta as operações aritméticas básicas: adição, subtração, multiplicação e divisão. Com o operador -, você subtrai facilmente um valor de outro.

Subtração simples

-- Subtracting two numbers
SELECT 10 - 5 AS difference;

Saída esperada

difference
----------
5

Subtraindo colunas

Num cenário mais prático, você pode querer subtrair uma coluna de outra. Isso é simples no SQLite.

-- Assuming a table 'financials' with columns 'revenue' and 'expenses'
SELECT revenue, expenses, revenue - expenses AS profit FROM financials;

Esta consulta calcula o lucro subtraindo as despesas da receita em cada linha da tabela financials.

Técnicas avançadas de subtração

A subtração não se limita à aritmética simples. Ela pode fazer parte de expressões mais complexas, incluindo as que envolvem datas e horários.

Trabalhando com datas

O SQLite permite subtrair uma data de outra para obter a diferença em dias. Para isso, porém, é preciso usar a função julianday, que converte uma data em um número de dia juliano. Subtrair esses números retorna a diferença em dias.

CREATE TABLE events (
    title TEXT,
    start DATE,
    end DATE);
INSERT INTO events VALUES('Tech Conference', '2024-02-28', '2024-03-02');

Para obter a duração do evento:

SELECT title, julianday(end) - julianday(start) AS 'duration' 
FROM events;

Saída esperada:

Tech Conference   2.0

Subtração condicional com CASE

Você pode fazer subtrações condicionais usando a instrução CASE. Isso é útil para cálculos mais elaborados que dependem de certas condições.

-- Assuming a table 'orders' with columns 'quantity' and 'discount_applied'
SELECT quantity, discount_applied,
       CASE
           WHEN discount_applied THEN quantity - 1
           ELSE quantity
       END AS final_quantity
FROM orders;

Este exemplo desconta um da quantidade se um desconto foi aplicado, mostrando como subtrair valores de forma condicional.

Casos de uso práticos

Calculando a idade

Um caso de uso comum é calcular a idade de alguém com base na data de nascimento.

SELECT name, birthdate,
       (strftime('%Y', 'now') - strftime('%Y', birthdate)) - (strftime('%m-%d', 'now') < strftime('%m-%d', birthdate))
       AS age
FROM people;

Esta consulta calcula a idade subtraindo o ano de nascimento do ano atual e ajustando o resultado se hoje for antes do aniversário da pessoa neste ano.

Relatórios financeiros

A subtração é essencial em relatórios financeiros, por exemplo, para calcular a variação mensal das despesas.

-- Assuming a table 'monthly_expenses' with columns 'month' and 'amount'
SELECT month,
       amount - LAG(amount) OVER (ORDER BY month) AS monthly_change
FROM monthly_expenses;

Este exemplo usa a função de janela LAG para subtrair as despesas do mês anterior das do mês atual, mostrando o poder da subtração na análise financeira.

Conclusão

A subtração no SQLite é uma ferramenta versátil no seu kit de SQL. Da aritmética básica à lógica condicional complexa e à manipulação de datas, saber usar a subtração de forma eficaz pode revelar insights mais profundos sobre seus dados. Lembre-se: a prática leva à perfeição. Experimente esses exemplos e incorpore a subtração nas suas consultas SQL para ver como ela pode melhorar suas análises e relatórios.

Beekeeper Studio é um cliente de banco de dados gratuito e open source

A melhor ferramenta de consultas e edição de SQL que já usei. Tem tudo o que preciso para gerenciar meu banco de dados. - ⭐⭐⭐⭐⭐ Mit

O Beekeeper Studio é rápido, intuitivo e fácil de usar. Ele suporta vários bancos de dados e funciona muito bem no Windows, Mac e Linux.

A versão do Beekeeper para Linux tem 100% dos recursos, sem atalhos e sem concessões.

O que os usuários dizem sobre o Beekeeper Studio

★★★★★
"O Beekeeper Studio substituiu completamente meu antigo fluxo de trabalho com SQL. É rápido, intuitivo e faz o trabalho com banco de dados voltar a ser agradável."
— Alex K., desenvolvedor de banco de dados
★★★★★
"Já testei muitas GUIs de banco de dados, mas o Beekeeper encontra o equilíbrio perfeito entre recursos e simplicidade. Simplesmente funciona."
— Sarah M., engenheira full stack

Pronto para melhorar seu fluxo de trabalho com SQL?

download Baixar grátis