SQL: perguntas melhores aos dados
Pratica SQL com janelas, reconciliação, integridade, paginação e leitura de planos. Avalia índices e diagnostica queries lentas com exemplos e decisões explicadas.
Objetivos e percurso
Onze aulas, 100 perguntas regulares e 20 cenários originais desenvolvem raciocínio SQL com referência PostgreSQL 18. Abrange transações, janelas, reconciliação, restrições, paginação, custos, cardinalidade, índices e memória de operações. Os exemplos são fictícios e não representam procedimentos internos de um banco. A avaliação final reutiliza 68 decisões em 120 minutos. Os testes executam um subconjunto portátil em SQLite 3.51.2 e cálculos de planos sintéticos; não comprovam execução, concorrência, otimização ou desempenho PostgreSQL. Os limites quantitativos inferiores maduros estão atingidos; laboratórios no motor real, aprofundamento e revisão independente continuam pendentes.
Para quem: Equipas de suporte L2/L3, desenvolvimento, análise de dados e gestores técnicos que precisam de interpretar consultas e alterações.
Pré-requisitos: Noções de tabelas, linhas e colunas. Conhecimento básico de aplicações ajuda; não é necessário acesso a produção.
547 minutos de estudo estimados
- Interpretar NULL, ordenação e filtros com amostras explícitas.
- Preservar população e granularidade em JOINs e métricas.
- Relacionar transações, restrições e conflitos de concorrência.
- Avaliar planos e recuperação com evidência e limites claros.
- Escolher partições, desempates e frames coerentes com a unidade de cada linha.
- Distinguir ausência de linha, montante desconhecido e diferença conhecida numa reconciliação.
- Verificar denominadores e preservar identidade ao combinar métricas e relações.
- Traduz regras de dados em restrições e distingue conflitos de identidade de repetições equivalentes.
- Constrói cursores coerentes com a ordenação e explica o que acontece quando os dados mudam entre páginas.
- Lê estimativas e medições com o âmbito correto e avalia índices sem alterar o resultado exigido pelo negócio.
Módulos
- Consultar com intenção
- Juntar sem multiplicar enganos
- Contar e agrupar com cuidado
- Alterações que preservam regras
- Índices e planos de execução
- Concorrência e atualização segura
- Funções de janela e séries operacionais
- Reconciliação, métricas e diagnóstico de consultas
- Integridade, identidade e conflitos de escrita
- Paginação e consistência dos resultados
- Planos, índices e diagnóstico de queries
Continua a aprender
Referências e versão
PostgreSQL 18 reference semantics; DR SQL 2026.4; synthetic plan metrics and portable SQLite 3.51.2 examples
- PostgreSQL 18: Comparison Functions and Operators · 2026-10-01
- Explicit ordering · 2026-10-01
- PostgreSQL 18: Table Expressions · 2026-10-01
- PostgreSQL 18: Aggregate Functions · 2026-10-01
- PostgreSQL 18: Subquery Expressions · 2026-10-01
- PostgreSQL 18: Transactions · 2026-09-29
- Constraints and identity · 2026-10-01
- PostgreSQL 18: Introduction to indexes · 2026-09-29
- Reading estimates and execution plans · 2026-10-01
- Snapshots and observations · 2026-10-01
- PostgreSQL 18: Explicit locking · 2026-09-29
- PostgreSQL 18: UPDATE · 2026-09-29
- PostgreSQL 18: Window Functions · 2026-10-01
- PostgreSQL 18: Window Function Tutorial · 2026-10-01
- PostgreSQL 18: Value Expressions · 2026-10-01
- PostgreSQL 18: WITH Queries · 2026-10-01
- PostgreSQL 18: Combining Queries · 2026-10-01
- PostgreSQL 18: Mathematical Functions and Operators · 2026-10-01
- Partial-index eligibility · 2026-10-01
- Conflict behavior · 2026-10-01
- Pagination and limits · 2026-10-01
- Row comparison and NULL · 2026-10-01
- SQLite constraints for local fixtures · 2026-10-01
- SQLite foreign key enforcement · 2026-10-01
- SQLite row comparison · 2026-10-01
- EXPLAIN execution boundary · 2026-10-01
- Multicolumn indexes and PostgreSQL 18 skip scan · 2026-10-01
- Covering indexes and visibility · 2026-10-01
- Statistics and correlated columns · 2026-10-01
- Expression indexes · 2026-10-01
- Bitmap index combination and ordering · 2026-10-01
- Generic and custom plans · 2026-10-01
- Memory per operation and concurrent use · 2026-10-01
- Sequence effects and rollback · 2026-10-01
O que vais explorar
0 / 11Consultar com intenção
Seleciona colunas, filtra linhas e define uma ordem explícita.
Juntar sem multiplicar enganos
Compreende cardinalidade e preservação de linhas.
Contar e agrupar com cuidado
Escolhe a medida e a granularidade do resultado.
Alterações que preservam regras
Usa transações, restrições e planos de execução com propósito.
Índices e planos de execução
Relaciona acesso aos dados, seletividade e custo de manutenção.
Concorrência e atualização segura
Evita perder alterações e distingue transação de repetição segura.
Funções de janela e séries operacionais
Preserva detalhe, escolhe rankings, define frames e verifica a população antes de interpretar um indicador.
Reconciliação, métricas e diagnóstico de consultas
Conserva identidade e população ao combinar dados, calcular indicadores e investigar diferenças entre etapas de uma consulta.
Integridade, identidade e conflitos de escrita
Traduz regras de dados em restrições e distingue conflitos de identidade de repetições equivalentes.
Paginação e consistência dos resultados
Constrói cursores coerentes com a ordenação e explica o que acontece quando os dados mudam entre páginas.
Planos, índices e diagnóstico de queries
Lê estimativas e medições com o âmbito correto e avalia índices sem alterar o resultado exigido pelo negócio.