Chà, nếu bạn có toàn bộ các hàng là bản sao trong bảng của mình, thì ít nhất bạn chưa thiết lập khóa chính cho bảng đó, nếu không thì ít nhất giá trị khóa chính sẽ khác.
Tuy nhiên, đây là cách tạo SQL để lấy các bản sao trên một tập hợp các cột:
SELECT col1, col2, col3, col4
FROM table
GROUP BY col1, col2, col3, col4
HAVING COUNT(*) > 1
Điều này sẽ tìm thấy các hàng, đối với các cột col1-col4, có cùng một kết hợp các giá trị, nhiều hơn một lần.
Ví dụ:trong bảng sau, các hàng 2 + 3 sẽ là các hàng trùng lặp:
PK col1 col2 col3 col4 col5
1 1 2 3 4 6
2 1 3 4 7 7
3 1 3 4 7 10
4 2 3 1 4 5
Hai hàng chia sẻ các giá trị chung trong cột col1-col4 và do đó, theo SQL đó, được coi là trùng lặp. Mở rộng danh sách các cột để chứa tất cả các cột mà bạn muốn phân tích.