SQL é português estruturado: o jeito mais rápido de aprender a consultar dados
A maior parte do conteúdo de SQL ensina sintaxe. “SELECT puxa colunas, WHERE filtra, JOIN junta tabelas.” Funciona — mas trata SQL como uma língua estranha que você precisa decorar.
Esse artigo parte de uma ideia diferente:
SQL é português estruturado. Se você consegue formular a pergunta em voz alta, você consegue escrever a query.
Cada palavra de SQL é só uma palavra de vocabulário que destrava um novo tipo de pergunta. Com umas 9 palavras, você responde 80% das perguntas de negócio do dia a dia de quem trabalha com dados.
A loja que vamos usar nos exemplos
Pra não falar no abstrato, imagina a Lojinha da Esquina, um e-commerce de bairro. O dono, o Zé, faz perguntas toda semana — e cada pergunta vira uma query.
A loja tem três tabelas:
clientes— quem compra (id, nome, cidade, estado)produtos— o que ela vende (id, nome, categoria, preço)pedidos— cada venda (id, cliente, produto, data, valor)
“Me mostra” → SELECT + FROM
O Zé pergunta: “Me mostra os nomes dos meus clientes.”
Repara que a frase já tem tudo: o que você quer ver (os nomes) e de onde (dos clientes).
SELECT nome
FROM clientes
SELECT é o “me mostra”. FROM é o “de onde”. Só isso.
”Só os que…” → WHERE
“Me mostra os clientes, só os que são de São Paulo.”
O “só os que” é um filtro. Em SQL ele se chama WHERE:
SELECT nome
FROM clientes
WHERE estado = 'SP'
Você não decorou nada. Você traduziu a frase.
”Em ordem, e só os primeiros” → ORDER BY + LIMIT
“Me mostra os pedidos, do maior valor pro menor, só os 5 primeiros.”
SELECT id_pedido, valor_total
FROM pedidos
ORDER BY valor_total DESC
LIMIT 5
ORDER BY é o “em ordem”. DESC é “do maior pro menor”. LIMIT é “só os primeiros”.
”Agrupado por…” → GROUP BY
“Quanto cada cliente já gastou no total?”
Quando aparece um “por cliente”, “por categoria”, “por mês” — é GROUP BY:
SELECT id_cliente, SUM(valor_total) AS total_gasto
FROM pedidos
GROUP BY id_cliente
SUM soma, GROUP BY diz por quem somar. “Total gasto por cliente” sai quase igual à frase.
A regra que vale pra sempre
Antes de abrir o editor, fale a pergunta em voz alta, em português. A query é só essa frase reorganizada:
- O que mostrar →
SELECT - De onde →
FROM - Só os que →
WHERE - Por quem agrupar →
GROUP BY - Em que ordem →
ORDER BY
Decorar sintaxe te dá uma query. Traduzir a pergunta te dá todas as queries.
Esse é o começo. Nos próximos artigos a gente vai destravando uma palavra de cada vez — JOIN, HAVING, window functions — sempre partindo de uma pergunta de negócio real do Zé.