Pular para o conteúdo
EasyCode Praticar grátis

Cola Rápida de SQL: Comandos Essenciais

Guia prático de consulta e macetes para bancos de dados relacionais · Atualizado 2026

Como usar esta cola

Esta página reúne os comandos fundamentais de SQL (Structured Query Language) para consultar, filtrar, ordenar e cruzar tabelas em bancos de dados relacionais (PostgreSQL, SQLite, MySQL e SQL Server).

🧭 Ordem das cláusulas

Operação Comando SQL Macete
A ordem de escrita
Nesta ordem, sempre.
SELECT colunas
FROM tabela
WHERE condição
GROUP BY coluna
HAVING condição_do_grupo
ORDER BY coluna
LIMIT n;
Como perguntas: O quê? De onde? Quais? Agrupar como? Quais grupos? Em que ordem? Quantos?

🔎 Consultar

Operação Comando SQL Macete
Escolher colunas
Traz só o que você pede.
SELECT nome, cidade FROM clientes;
SELECT * traz tudo; evite no dia a dia.
Filtrar
Mantém só as linhas que servem.
SELECT * FROM produtos WHERE preco < 10;
Em SQL o igual é UM só: =.
E / OU
Combina condições.
WHERE cidade = 'Recife' AND idade >= 22
WHERE cidade = 'Recife' OR cidade = 'Salvador'
AND estreita, OR alarga.
Padrões e listas
% vale por qualquer texto.
WHERE nome LIKE 'P%'
WHERE cidade IN ('Recife', 'Salvador')
LIKE 'P%' = começa com P.
Ordenar e limitar
Os 3 mais caros, por exemplo.
ORDER BY preco DESC
LIMIT 3
DESC = de cima para baixo (decrescente).

📊 Resumir e agrupar

Operação Comando SQL Macete
Funções de resumo
Resumem várias linhas em uma.
COUNT(*)   SUM(x)   AVG(x)   MIN(x)   MAX(x)
COUNT conta, SUM soma, AVG tira a média.
Agrupar
Um resultado por grupo.
SELECT cidade, COUNT(*)
FROM clientes
GROUP BY cidade;
GROUP BY = “por”: quantos clientes POR cidade.
Filtrar grupos
Filtra depois de agrupar.
GROUP BY cidade
HAVING COUNT(*) >= 2
G de Grupo vem antes de H de Having.
Apelido
Dá nome ao resultado.
SELECT COUNT(*) AS total FROM clientes;
AS = “apelidado de”.
Sem repetidos
Remove duplicados.
SELECT DISTINCT cidade FROM clientes;
DISTINCT = “distintos”.

🔗 Juntar tabelas

Operação Comando SQL Macete
JOIN
Liga linhas de tabelas diferentes.
SELECT c.nome, p.data
FROM pedidos p
JOIN clientes c ON c.id = p.cliente_id;
JOIN só traz quem tem par.
LEFT JOIN
Mantém todos da esquerda.
FROM clientes c
LEFT JOIN pedidos p ON p.cliente_id = c.id
WHERE p.id IS NULL
LEFT = todos da esquerda. Sem par: NULL.
NULL
Valor ausente.
WHERE coluna IS NULL
WHERE coluna IS NOT NULL
Nunca use = NULL: o certo é IS NULL.

✏️ Alterar dados

Operação Comando SQL Macete
Inserir
Adiciona uma linha.
INSERT INTO clientes (nome, cidade)
VALUES ('Gabi', 'Recife');
Colunas e valores na mesma ordem.
Atualizar
Altera linhas existentes.
UPDATE produtos SET preco = 13
WHERE nome = 'Café';
SEM WHERE = TUDO muda! Teste antes com SELECT.
Apagar
Remove linhas.
DELETE FROM pedidos WHERE quantidade > 5;
SEM WHERE = apaga TUDO. Rode um SELECT igual primeiro.
CASE
if dentro do SQL.
CASE WHEN estoque = 0 THEN 'falta'
     WHEN estoque < 10 THEN 'baixo'
     ELSE 'ok' END
Os WHEN são testados em ordem.

Quer praticar desafios de SQL com tabelas reais?

No EasyCode você resolve problemas práticos de e-commerce, clientes e estoque com feedback instantâneo:

Praticar SQL Grátis no EasyCode

Apoie o EasyCode 💜

O EasyCode é gratuito, independente e sem anúncios. Manter a plataforma rápida, com compiladores no navegador e novos conteúdos atualizados tem custos reais todo mês. Se o site está te ajudando a aprender, veja como apoiar o projeto para continuarmos sempre no ar e acessíveis para todos.

💜 Conhecer e apoiar o projeto