Aralin 1Mga teknik sa pag-filter: WHERE vs HAVING, paggamit ng EXISTS, IN, correlated subqueriesMag-develop ng matatag na mga estratehiya sa pag-filter para sa mga analytical queries. I-compare ang WHERE at HAVING, gumamit ng EXISTS at IN para sa mga subquery filters, at ilapat ang correlated subqueries upang ipahayag ang mga komplikadong, row-aware na analytical conditions.
WHERE vs HAVING sa grouped queriesPaggamit ng IN at NOT IN kasama ang subqueriesEXISTS at NOT EXISTS para sa semi joinsCorrelated subqueries para sa row-aware logicPaghawak ng NULLs sa filter conditionsMga tip sa performance para sa complex filtersAralin 2Mga data types ng SQL at paghawak ng date/time (DATE, TIMESTAMP, numeric precision)Matututo ng mga pangunahing data types ng SQL na ginagamit sa analytics at kung paano ito nakakaapekto sa storage, precision, at calculations. Unawain ang numeric scales, text handling, at matibay na date at timestamp operations para sa time-based analysis.
Numeric types at precision para sa metricsMga konsiderasyon sa character at text dataDATE vs TIMESTAMP at time zonesCasting at pag-convert sa pagitan ng typesDate arithmetic at interval calculationsPagkuha ng mga bahagi ng dates para sa groupingAralin 3Aggregations at grouping: GROUP BY, HAVING, COUNT, SUM, AVG, MIN, MAXMatututo ng pagbuod ng data gamit ang aggregations at grouping. Gumamit ng GROUP BY at HAVING upang bumuo ng metrics, ilapat ang COUNT, SUM, AVG, MIN, at MAX, at mag-design ng matibay na aggregate queries para sa dashboards at reports.
GROUP BY fundamentals at syntaxAggregate functions COUNT at SUMAVG, MIN, at MAX para sa distributionsHAVING upang i-filter ang aggregated resultsGrouping by expressions at bucketsPaghawak ng NULLs sa aggregatesAralin 4Paglo-load ng CSVs sa databases: COPY, LOAD DATA, sqlite import, at common pitfallsMatututo ng praktikal na mga paraan upang mag-load ng CSV data sa databases para sa analysis. Gumamit ng COPY, LOAD DATA, at SQLite import, hawakan ang delimiters at encodings, at iwasan ang mga common pitfalls na nagdudulot ng masamang o partial na loads.
Paghanda ng CSVs para sa reliable importsPaggamit ng COPY sa PostgreSQL at katulad na systemsLOAD DATA para sa MySQL at compatible enginesSQLite .import workflow at optionsPaghawak ng encodings, delimiters, at quotesPag-validate ng row counts at rejected recordsAralin 5Mga DDL at DML essentials: CREATE TABLE, ALTER, INSERT, UPDATE, DELETE, transaction controlMatututo kung paano ang DDL at DML ay humuhubog at binabago ang mga table para sa analytics. Mag-practice ng paglikha at pagbabago ng schemas, pag-insert at pag-update ng data, pag-delete nang ligtas, at paggamit ng transactions upang tiyakin ang data integrity sa analytical workflows at pipelines.
Paggawa ng analytical tables gamit ang CREATE TABLEPagbabago ng schemas nang ligtas gamit ang ALTER TABLEINSERT patterns para sa bulk at incremental loadsUPDATE at DELETE na may safe predicatesCOMMIT, ROLLBACK, at transaction scopeACID properties sa analytical workloadsAralin 6Query basics: SELECT, WHERE, ORDER BY, LIMIT, DISTINCTMaster ang core query syntax na ginagamit sa halos bawat analysis. Matututo kung paano ang SELECT ay nagre-retrieve ng columns, WHERE ay nagfi-filter ng rows, ORDER BY ay nagsort ng results, LIMIT ay nagko-control ng sample size, at DISTINCT ay nagtatanggal ng duplicates sa analytical queries.
SELECT list design at column aliasesPag-filter ng rows gamit ang WHERE conditionsPag-sort ng results gamit ang ORDER BYLIMIT at OFFSET para sa sampling dataPaggamit ng DISTINCT upang tanggalin ang duplicatesBasic query debugging at refinementAralin 7Joins at set operations: INNER, LEFT, RIGHT, FULL, CROSS, UNION, EXCEPT, INTERSECTUnawain kung paano ang joins at set operations ay pinagsasama ang datasets para sa analysis. Matututo kung kailan gagamitin ang bawat join type, kung paano iwasan ang duplication errors, at kung paano ang UNION, EXCEPT, at INTERSECT ay sumusuporta sa complex analytical comparisons.
INNER JOIN para sa intersecting datasetsLEFT, RIGHT, at FULL OUTER JOIN use casesCROSS JOIN at Cartesian products sa analysisUNION vs UNION ALL para sa stacking dataEXCEPT at INTERSECT para sa set comparisonsPag-detect at paghawak ng join duplicationAralin 8Mga konsepto ng relational database: tables, primary/foreign keys, normalization vs denormalizationUnawain ang core relational concepts na nagsisilbing pundasyon ng analytical schemas. Matututo ng tables, primary at foreign keys, normalization forms, at kung kailan mag-denormalize para sa performance sa reporting at BI workloads.
Tables, rows, at columns sa practicePrimary keys at uniqueness constraintsForeign keys at referential integrityNormalization forms at redundancy controlDenormalization para sa reporting performanceStar at snowflake schemas overviewAralin 9Performance basics: indexes, query plans, explain/analyze, simple optimization strategies para sa analytical queriesMakakuha ng praktikal na pananaw sa query performance para sa analytics. Matututo kung paano gumagana ang indexes, basahin ang query plans, gumamit ng EXPLAIN at ANALYZE, at mag-apply ng simple optimization strategies upang panatilihin ang analytical queries na efficient.
Kung paano ang indexes ay nagpapabilis ng lookups at joinsPagbasa at pag-interpret ng query plansPaggamit ng EXPLAIN at ANALYZE sa practicePag-identify ng mabagal na filters at joinsPag-optimize ng GROUP BY at aggregationsBasic indexing strategies para sa analyticsAralin 10Window functions overview: ROW_NUMBER, RANK, DENSE_RANK, SUM() OVER(), AVG() OVER(), PARTITION BYGalugarin ang window functions upang gumawa ng advanced analytics nang hindi binabawasan ang rows. Matututo ng ranking, running totals, moving averages, at partitioning strategies na nagbibigay lakas sa cohort, trend, at segmentation analysis sa SQL.
Window function syntax at OVER clauseROW_NUMBER, RANK, at DENSE_RANK use casesRunning totals gamit ang SUM() OVER()Moving averages gamit ang window framesPARTITION BY para sa cohort at segment logicORDER BY sa windows vs query ordering