Aula 06: DQL Básico 💾
Consultando Dados
Ricardo Pires
Bancos de Dados SQL e NoSQL
🎯 O que vamos aprender hoje?
- A linguagem DQL
- Comando SELECT
- Filtros com WHERE
- Operadores Lógicos e Matemáticos
- Ordenação (ORDER BY)
- Boas Práticas de Performance
🔍 O que é DQL?
- Data Query Language
- Foco em RECUPERAR dados
- O comando mais usado:
SELECT 🔎
📽️ Projeção: O que ver?
SELECT nome, cpf FROM clientes;
- Escolhemos quais colunas a TV (resultado) vai mostrar.
🎬 Seleção: Quem ver?
SELECT * FROM clientes WHERE id = 5;
- O WHERE é o nosso controle remoto.
- Ele filtra as linhas que desejamos. 🎯
🎯 Operadores de Filtro
=: Igual
<> ou !=: Diferente
> e <: Maior/Menor
BETWEEN: Entre valores 📏
IN: Em uma lista 🧺
📝 Busca por Padrão (LIKE)
%: Qualquer coisa!
LIKE 'Ri%': Começa com Ri (Ricardo, Rio...) 🇧🇷
LIKE '%gmail.com': Termina com gmail.
ILIKE: Busca sem diferenciar Maiúsculas/Minúsculas (PostgreSQL).
📶 Ordenando o Caos
SELECT * FROM produtos
ORDER BY nome ASC; -- A-Z
- Use DESC para o contrário (Z-A ou Maior->Menor).
- Pode ordenar por mais de uma coluna!
💎 Valores Únicos (DISTINCT)
SELECT DISTINCT cidade FROM clientes;
- Se 10 clientes moram em SP, aparecerá "SP" apenas uma vez no resultado.
📊 Arquitetura do SELECT
graph TD
S[SELECT] --> F[FROM]
F --> W[WHERE]
W --> O[ORDER BY]
O --> L[LIMIT]
🛑 O perigo do SELECT *
- Traz dados que você não vai usar
- Deixa a rede lenta
- Pior inimigo da performance em larga escala! 🐢
- Dica: Liste as colunas!
💻 Prática no pgAdmin
- Escrever o SQL
- F5 para rodar
- Olhar a aba "Data Output"
- Verificar o tempo de execução (milisegundos)
🧪 Combinando tudo
SELECT nome, preco
FROM produtos
WHERE categoria = 'Livros'
AND preco BETWEEN 20 AND 50
ORDER BY preco DESC;
🔢 Limitando Resultados (LIMIT)
- Quer apenas os 10 primeiros?
SELECT * FROM vendas LIMIT 10;
- Essencial para criar páginas no site (Paginação). 📄
🏁 Resumo
SELECT é para ler
WHERE é para filtrar
ORDER BY é para organizar
DISTINCT limpa repetidos
LIMIT controla o volume
👋 Até a próxima aula!
Tema: Consultas Avançadas e Agregações 🧪
"Ver Exercícios"