Why DISTINCT Alone Is Often Wrong
Concepts covered: sqlWindowDedup
Past correctness, the interviewer wants to know whether you treat dedup as a one-step operation or as a multi-step investigation. Detecting duplicates is a different query from removing them. Counting duplicates is a different query from either. Each is useful at a different point in the workflow; mixing them up loses the diagnostic signal that drives the decision. Detection: finding the duplicates Before deduplicating, find the duplicates. The query: GROUP BY the dedup key, HAVING COUNT(*) > 1. The result is the list of keys that have more than one row, with the count of how many. This query produces the diagnostic view: which keys have duplicates, how many. If the consumer of this query is a human investigating data quality, this is the right output. If you find ten thousand duplicates c
About This Interactive Section
This section is part of the Deduplication: Beginner lesson on DataDriven, a free data engineering interview prep platform. Each section includes explanations, worked examples, and hands-on code challenges that execute in real time. SQL queries run against a live PostgreSQL database. Python runs in a sandboxed Docker container. Data modeling problems validate against interactive schema canvases. All content is framed around what data engineering interviewers actually test at companies like Meta, Google, Amazon, Netflix, Stripe, and Databricks.
How DataDriven Lessons Work
DataDriven combines four interview rounds (SQL, Python, Data Modeling, Pipeline Architecture) with adaptive difficulty and spaced repetition. Easy problems get harder as you improve. Weak concepts resurface until you master them. Your readiness score tracks progress across every topic interviewers test. Every lesson section ends with problems you solve by writing and running real code, not by picking multiple-choice answers.