Dataford
Interview QuestionsInterview GuidesExperiencesMock InterviewsPricing
Get started
Finding and Cleaning Duplicate Data
00:00
5 left

Finding and Cleaning Duplicate Data

MediumSQL · PostgreSQL

Problem

Write a SQL query to find duplicate records in a table and explain how you would clean up this test data.

Treat rows as duplicates when every column except record_id matches, including matching NULL values. Identify all rows belonging to duplicate groups, then explain how to retain the lowest record_id and remove the other copies.

Output

  1. One row per record in a duplicate group, including record_id, duplicate-defining columns, duplicate_count, and duplicate_rank.
  2. Sort by record_id ascending.

Schema

test_records
ColumnTypeDescription
record_idPKINTUnique identifier for the test record
customer_idINTIdentifier of the customer associated with the event
event_typeVARCHAR(30)Type of customer event
event_dateDATEDate on which the event occurred
amountNUMERIC(10,2)Amount associated with the event
sourceVARCHAR(20)Originating test-data source
Tablestest_records
Interviewer

Your question is Finding and Cleaning Duplicate Data. Start with the requirements and the one table in the Question tab.

Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.

You need to log in / sign up to run or submit.
CodePostgreSQL
You need to log in / sign up to run or submit.Ln 1
Run your query to see results here.