हां, मान लें कि आपके पास एक अद्वितीय आईडी फ़ील्ड है, तो आप आईडी को छोड़कर सभी समान रिकॉर्ड हटा सकते हैं, लेकिन उनके मूल्यों के समूह के लिए "न्यूनतम आईडी" नहीं है।
उदाहरण क्वेरी:
DELETE FROM Table
WHERE ID NOT IN
(
SELECT MIN(ID)
FROM Table
GROUP BY Field1, Field2, Field3, ...
)
नोट:
- मैंने स्वतंत्र रूप से "टेबल" और "आईडी" को प्रतिनिधि नामों के रूप में चुना
- फ़ील्ड की सूची ("फ़ील्ड1, फ़ील्ड2, ...") में आईडी को छोड़कर सभी फ़ील्ड शामिल होने चाहिए
- फ़ील्ड और पंक्तियों की संख्या के आधार पर यह एक धीमी क्वेरी हो सकती है, हालांकि मुझे उम्मीद है कि विकल्पों की तुलना में यह ठीक रहेगा
संपादित करें:यदि आपके पास एक अद्वितीय अनुक्रमणिका नहीं है, तो मेरी अनुशंसा है कि आप केवल एक स्वत:वृद्धिशील अद्वितीय अनुक्रमणिका जोड़ें। मुख्य रूप से इसलिए कि यह अच्छा डिज़ाइन है, बल्कि इसलिए भी कि यह आपको उपरोक्त क्वेरी को चलाने की अनुमति देगा।