Tôi có một bảng với 3 cột như sau:Loại bỏ các hàng trùng lặp từ một bảng trong DB2 trong một truy vấn đơn
one | two | three | name
------------------------------------
A1 B1 C1 xyz
A1 B1 C1 pqr -> should be deleted
A1 B1 C1 lmn -> should be deleted
A2 B2 C2 abc
A2 B2 C2 def -> should be deleted
A3 B3 C3 ghi
------------------------------------
bảng này không được có bất kỳ cột khóa chính. Tôi không có bất kỳ điều khiển nào trên bàn và vì vậy tôi không thể thêm bất kỳ cột khóa chính nào.
Như được hiển thị, tôi muốn xóa các hàng có kết hợp một, hai và ba cột giống nhau. Vì vậy, nếu A1B1C1 xảy ra ba lần (như ở trên ví dụ), hai cái còn lại sẽ bị xóa và chỉ một người nên ở lại.
Làm thế nào để đạt được điều này thông qua chỉ một truy vấn trong DB2?
Yêu cầu của tôi là cho một truy vấn duy nhất vì tôi sẽ chạy nó thông qua một chương trình java.
tại sao bạn thích xyz ở trên {pqr, lmn} và abc trên def? Tùy chọn đầu tiên đầu tiên khi được sắp xếp theo thứ tự bảng chữ cái, thứ hai đầu tiên. không có ý nghĩa với tôi. – wildplasser
@wildplasser: cột tên không quan trọng trong các bước tiếp theo. Vì vậy, không có sở thích như vậy ... bất kỳ hai có thể bị xóa .. – Nik