
- When? Identify primary / composite keys OR check tables for unintended duplicates
- How? (1) Identify duplicated cust_id (2) Use INNER JOIN to identify matching rows between raw table and (1)
- Query to use:
Method 1: (using CTE)
WITH dupes AS (
SELECT user_id as dupe_id, COUNT(*)
FROM users
GROUP BY user_id
HAVING COUNT(*) > 1
)
SELECT user_id,
full_name,
email
FROM users INNER JOIN dupes on user_id = dupe_id
Method 2:
SELECT users.user_id, full_name, email
FROM users
INNER JOIN (
SELECT user_id, COUNT(*)
FROM users
GROUP BY user_id
HAVING COUNT(*) > 1
) AS dupes
ON users.user_id = dupes.user_id