Aula 1Técnicas de filtragem: WHERE vs HAVING, uso de EXISTS, IN, subconsultas correlacionadasDesenvolva estratégias precisas de filtragem para consultas analíticas. Compare WHERE e HAVING, use EXISTS e IN para filtros de subconsultas e aplique subconsultas correlacionadas para expressar condições analíticas complexas e conscientes de linhas.
WHERE vs HAVING em consultas agrupadasUsando IN e NOT IN com subconsultasEXISTS e NOT EXISTS para semi-joinsSubconsultas correlacionadas para lógica por linhaTratando NULLs em condições de filtroDicas de performance para filtros complexosAula 2Tipos de dados SQL e tratamento de data/hora (DATE, TIMESTAMP, precisão numérica)Aprenda os principais tipos de dados SQL usados em análises e como eles afetam armazenamento, precisão e cálculos. Entenda escalas numéricas, tratamento de texto e operações robustas com datas e timestamps para análise baseada em tempo.
Tipos numéricos e precisão para métricasConsiderações com dados de caracteres e textoDATE vs TIMESTAMP e fusos horáriosConversão e casting entre tiposAritmética de datas e cálculos de intervalosExtrair partes de datas para agrupamentoAula 3Agregações e agrupamento: GROUP BY, HAVING, COUNT, SUM, AVG, MIN, MAXAprenda a resumir dados com agregações e agrupamentos. Use GROUP BY e HAVING para criar métricas, aplique COUNT, SUM, AVG, MIN e MAX, e desenvolva consultas agregadas robustas para painéis e relatórios.
Fundamentos e sintaxe do GROUP BYFunções agregadas COUNT e SUMAVG, MIN e MAX para distribuiçõesHAVING para filtrar resultados agregadosAgrupamento por expressões e faixasTratando NULLs em agregaçõesAula 4Carregando CSVs em bancos de dados: COPY, LOAD DATA, importação sqlite e armadilhas comunsAprenda métodos práticos para carregar dados CSV em bancos de dados para análise. Use COPY, LOAD DATA e importação SQLite, trate delimitadores e codificações, e evite armadilhas comuns que causam carregamentos ruins ou parciais.
Preparando CSVs para importações confiáveisUsando COPY no PostgreSQL e sistemas similaresLOAD DATA para MySQL e engines compatíveisFluxo .import do SQLite e opçõesTratando codificações, delimitadores e aspasValidando contagens de linhas e registros rejeitadosAula 5Essenciais de DDL e DML: CREATE TABLE, ALTER, INSERT, UPDATE, DELETE, controle de transaçõesAprenda como DDL e DML moldam e modificam tabelas para análises. Pratique criação e alteração de esquemas, inserção e atualização de dados, exclusão segura e uso de transações para garantir integridade de dados em fluxos analíticos e pipelines.
Criando tabelas analíticas com CREATE TABLEModificando esquemas com segurança via ALTER TABLEPadrões INSERT para carregamentos em massa e incrementaisUPDATE e DELETE com predicados segurosCOMMIT, ROLLBACK e escopo de transaçõesPropriedades ACID em cargas analíticasAula 6Consultas básicas: SELECT, WHERE, ORDER BY, LIMIT, DISTINCTDomine a sintaxe central de consultas usada em quase toda análise. Aprenda como SELECT recupera colunas, WHERE filtra linhas, ORDER BY ordena resultados, LIMIT controla tamanho de amostra e DISTINCT remove duplicatas em consultas analíticas.
Design da lista SELECT e aliases de colunasFiltrando linhas com condições WHEREOrdenando resultados com ORDER BYLIMIT e OFFSET para amostragem de dadosUsando DISTINCT para remover duplicatasDepuração e refinamento básico de consultasAula 7Junções e operações de conjunto: INNER, LEFT, RIGHT, FULL, CROSS, UNION, EXCEPT, INTERSECTEntenda como junções e operações de conjunto combinam conjuntos de dados para análise. Aprenda quando usar cada tipo de junção, como evitar erros de duplicação e como UNION, EXCEPT e INTERSECT suportam comparações analíticas complexas.
INNER JOIN para conjuntos de dados interseccionadosCasos de uso de LEFT, RIGHT e FULL OUTER JOINCROSS JOIN e produtos cartesianos em análisesUNION vs UNION ALL para empilhamento de dadosEXCEPT e INTERSECT para comparações de conjuntosDetectando e tratando duplicação em junçõesAula 8Conceitos de banco de dados relacional: tabelas, chaves primárias/estrangeiras, normalização vs desnormalizaçãoEntenda os conceitos relacionais centrais que sustentam esquemas analíticos. Aprenda sobre tabelas, chaves primárias e estrangeiras, formas de normalização e quando desnormalizar para performance em cargas de relatórios e BI.
Tabelas, linhas e colunas na práticaChaves primárias e restrições de unicidadeChaves estrangeiras e integridade referencialFormas de normalização e controle de redundânciaDesnormalização para performance de relatóriosVisão geral de esquemas estrela e floco de neveAula 9Noções básicas de performance: índices, planos de consulta, explain/analyze, estratégias simples de otimização para consultas analíticasObtenha uma visão prática da performance de consultas para análises. Aprenda como índices funcionam, leia planos de consulta, use EXPLAIN e ANALYZE, e aplique estratégias simples de otimização para manter consultas analíticas eficientes.
Como índices aceleram buscas e junçõesLendo e interpretando planos de consultaUsando EXPLAIN e ANALYZE na práticaIdentificando filtros e junções lentasOtimizando GROUP BY e agregaçõesEstratégias básicas de indexação para análisesAula 10Visão geral de funções de janela: ROW_NUMBER, RANK, DENSE_RANK, SUM() OVER(), AVG() OVER(), PARTITION BYExplore funções de janela para realizar análises avançadas sem colapsar linhas. Aprenda ranqueamento, totais corridos, médias móveis e estratégias de particionamento que impulsionam análises de coorte, tendência e segmentação em SQL.
Sintaxe de funções de janela e cláusula OVERCasos de uso de ROW_NUMBER, RANK e DENSE_RANKTotais corridos com SUM() OVER()Médias móveis com frames de janelaPARTITION BY para lógica de coorte e segmentoORDER BY em janelas vs ordenação da consulta