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 campos nome e idade da tabela clientes.

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 tabela clientes.

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 tabelas clientes e pedidos pela coluna id_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 tabela pedidos 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 campo telefone 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 por NULL.

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