Quando estamos fazendo uma análise inicial de dados em SQL, é essencial conhecer os recursos mais importantes para explorar, filtrar, agrupar e manipular os dados de forma eficiente. A seguir, apresento os 20 recursos mais importantes em SQL para essa tarefa, com exemplos explicados de cada um:
1. SELECT
- Descrição: A principal cláusula para recuperar dados de uma tabela.
- Exemplo:
sql SELECT nome, idade FROM clientes;
Recupera os camposnome
eidade
da tabelaclientes
.
2. WHERE
- Descrição: Filtra os dados com base em condições especificadas.
- Exemplo:
sql SELECT nome, idade FROM clientes WHERE idade > 30;
Recupera os dados onde a idade é maior que 30.
3. AND / OR
- Descrição: Permite combinar múltiplas condições na cláusula
WHERE
. - Exemplo:
sql SELECT nome, idade FROM clientes WHERE idade > 30 AND cidade = 'São Paulo';
Recupera os dados onde a idade é maior que 30 e a cidade é São Paulo.
4. ORDER BY
- Descrição: Ordena os resultados com base em uma ou mais colunas.
- Exemplo:
sql SELECT nome, idade FROM clientes ORDER BY idade DESC;
Ordena os resultados pela idade em ordem decrescente.
5. DISTINCT
- Descrição: Retorna apenas valores distintos (sem duplicatas).
- Exemplo:
sql SELECT DISTINCT cidade FROM clientes;
Recupera as cidades únicas dos clientes.
6. LIMIT
- Descrição: Restringe o número de resultados retornados.
- Exemplo:
sql SELECT nome, idade FROM clientes LIMIT 10;
Recupera os primeiros 10 registros da tabelaclientes
.
7. GROUP BY
- Descrição: Agrupa os dados com base em uma ou mais colunas.
- Exemplo:
sql SELECT cidade, COUNT(*) FROM clientes GROUP BY cidade;
Conta o número de clientes em cada cidade.
8. HAVING
- Descrição: Filtra os resultados de agregações feitas com
GROUP BY
. - Exemplo:
sql SELECT cidade, COUNT(*) FROM clientes GROUP BY cidade HAVING COUNT(*) > 5;
Recupera cidades com mais de 5 clientes.
9. JOIN (INNER JOIN)
- Descrição: Combina linhas de duas ou mais tabelas com base em uma condição comum.
- Exemplo:
sql SELECT c.nome, p.produto FROM clientes c INNER JOIN pedidos p ON c.id_cliente = p.id_cliente;
Recupera os nomes dos clientes e os produtos dos pedidos, associando as tabelasclientes
epedidos
pela colunaid_cliente
.
10. LEFT JOIN (LEFT OUTER JOIN)
- Descrição: Retorna todos os registros da tabela à esquerda, e os correspondentes da tabela à direita (se houver).
- Exemplo:
sql SELECT c.nome, p.produto FROM clientes c LEFT JOIN pedidos p ON c.id_cliente = p.id_cliente;
Retorna todos os clientes, incluindo os que não têm pedidos (em caso de ausência de pedidos, os campos da tabelapedidos
ficam nulos).
11. RIGHT JOIN (RIGHT OUTER JOIN)
- Descrição: Retorna todos os registros da tabela à direita, e os correspondentes da tabela à esquerda (se houver).
- Exemplo:
sql SELECT c.nome, p.produto FROM clientes c RIGHT JOIN pedidos p ON c.id_cliente = p.id_cliente;
Retorna todos os pedidos, incluindo aqueles que não têm clientes correspondentes.
12. FULL JOIN (FULL OUTER JOIN)
- Descrição: Retorna todos os registros quando há uma correspondência em uma das tabelas.
- Exemplo:
sql SELECT c.nome, p.produto FROM clientes c FULL OUTER JOIN pedidos p ON c.id_cliente = p.id_cliente;
Retorna todos os clientes e todos os pedidos, com nulos nos lugares onde não há correspondência.
13. UNION / UNION ALL
- Descrição: Combina os resultados de duas ou mais consultas.
UNION
: Elimina duplicatas.UNION ALL
: Retorna todos os resultados, incluindo duplicatas.
- Exemplo:
sql SELECT cidade FROM clientes UNION SELECT cidade FROM fornecedores;
Combina as cidades de duas tabelas, eliminando duplicatas.
14. CASE
- Descrição: Realiza lógica condicional dentro de uma consulta.
- Exemplo:
sql SELECT nome, CASE WHEN idade < 18 THEN 'Menor de idade' ELSE 'Maior de idade' END AS faixa_etaria FROM clientes;
Classifica os clientes como “Menor de idade” ou “Maior de idade” com base na idade.
15. COALESCE
- Descrição: Retorna o primeiro valor não nulo em uma lista de expressões.
- Exemplo:
sql SELECT nome, COALESCE(telefone, 'Não informado') AS telefone FROM clientes;
Substitui valores nulos no campotelefone
por “Não informado”.
16. NULLIF
- Descrição: Retorna
NULL
se os dois valores comparados forem iguais, caso contrário, retorna o primeiro valor. - Exemplo:
sql SELECT nome, NULLIF(idade, 0) AS idade_corrigida FROM clientes;
Substitui valores de idade igual a 0 porNULL
.
17. SUBQUERY (Consulta dentro de outra consulta)
- Descrição: Uma consulta aninhada dentro de outra.
- Exemplo:
sql SELECT nome, idade FROM clientes WHERE idade = (SELECT MAX(idade) FROM clientes);
Recupera o nome e idade do cliente mais velho.
18. IN
- Descrição: Verifica se um valor está dentro de uma lista de valores.
- Exemplo:
sql SELECT nome FROM clientes WHERE cidade IN ('São Paulo', 'Rio de Janeiro');
Recupera os nomes dos clientes que estão nas cidades São Paulo ou Rio de Janeiro.
19. BETWEEN
- Descrição: Filtra dados dentro de um intervalo específico.
- Exemplo:
sql SELECT nome, idade FROM clientes WHERE idade BETWEEN 20 AND 30;
Recupera clientes com idade entre 20 e 30 anos.
20. LIKE
- Descrição: Filtra dados com base em padrões de texto, usando os caracteres curinga
%
(qualquer sequência de caracteres) e_
(um único caractere). - Exemplo:
sql SELECT nome FROM clientes WHERE nome LIKE 'A%';
Recupera nomes de clientes que começam com a letra “A”.
Esses são os recursos mais essenciais para realizar uma análise inicial de dados em SQL. Cada um deles permite que você manipule e explore os dados de forma eficiente, facilitando a extração de insights e a criação de relatórios.
Comments are closed