🔄 Xử lý dữ liệu trùng lặp trong SQL – không hề khó!
Làm việc với SQL mà gặp dữ liệu trùng thì cũng "chuyện thường ở huyện" thôi. Quan trọng là biết cách xử lý gọn gàng. Mình chia sẻ 6 cách dễ áp dụng nè:
1️⃣ DISTINCT
Chỉ cần lấy ra bản ghi không trùng mà không đụng đến bảng gốc? Dùng cái này là nhanh nhất.
2️⃣ GROUP BY + MIN/MAX
Muốn gom nhóm và giữ lại một dòng duy nhất (ví dụ dòng có ID nhỏ nhất)? Dùng GROUP BY kèm MIN() là chuẩn.
3️⃣ ROW_NUMBER()
SQL sẽ đánh số từng dòng trong nhóm trùng – từ đó dễ chọn dòng muốn giữ.
4️⃣ DELETE + CTE
Dùng CTE để chọn dòng đầu tiên trong mỗi nhóm trùng, rồi xóa phần còn lại. Cách này khá “pro”, nhưng yên tâm là không khó dùng.
5️⃣ Sao lưu trước khi xóa
Luôn tạo 1 bản backup để lỡ tay xóa nhầm thì còn đường lui. Không bao giờ thừa đâu!
6️⃣ Dùng bảng tạm (temp table)
Tạo bảng mới chứa dữ liệu đã sạch, sau đó thay thế bảng cũ. Cách này siêu an toàn luôn.
✅ Tuỳ vào mục tiêu (chỉ truy vấn hay cần xóa thật) mà chọn cách phù hợp. Mỗi tình huống một giải pháp!
#SQLFun #DataCleaning #RemoveDuplicates #sqllife