sql - MySQL Query Remove Duplicate Row -
मेरे पास प्रारूप में डेटाबेस तालिका है:
डेटाए | डाटाबी | डाटासी | टाइमस्टैम्प | UniqueID डेटा ऐसा दिख सकता है:
5 | 4 | 11 | 1/1/2014 | 1 5 | 4 | 2 | 2/1/2014 | 2 5 | 4 | 11 | 3/1/2014 | 3 3 | 6 | 7 | 4/1/2014 | समस्या यह है कि मेरे पास डुप्लिकेट प्रविष्टियां हैं जहां डेटाए-सी सभी समान हैं (पंक्ति 1 और 3), लेकिन टाइमस्टैम्प (दिनांक डेटा रिकॉर्ड किया गया था) और यूनिकआईडी हमेशा अलग होता है। जिस तरह से मैं डेटा रिकॉर्ड कर रहा हूं (मेरे पास रिकॉर्डिंग प्रक्रियाओं को बदलने का विकल्प नहीं है) हमेशा एक ही डेटा को दो बार रिकॉर्ड करने की संभावना को छोड़ देता है। मैं एक क्वेरी कैसे चला सकता हूं जो सभी डेटा की तुलना करता है कॉलम यह जांचने के लिए कि क्या कोई डुप्लिकेट पंक्ति है और नवीनतम डेटा के साथ प्रविष्टि को हटा दें। उदाहरण के लिए पंक्ति 1 पहले दर्ज किया गया था, इसलिए मैं 3 पंक्ति को निकालना और पंक्ति 1 रखना चाहूंगा
आपकी मदद के लिए अग्रिम धन्यवाद।
यहां एक विकल्प है जिसे मैंने करने की कोशिश की है:
चुनें लाइन डेटाए, डेटाबी, डेटा से एफओआर [डाटाबेस]। [डीबीओ]। [Tbl_Data] जहां रेखा = 5 समूह द्वारा लाइन डेटाए, डेटाबी, डाटासी होने से (*) & gt; 1
इन_table WHERE आईडी से हटाएं (डुप्लिकेट रिकॉर्ड वापस करने के लिए चयन करें 'आईडी) चयन इस एक के समान होना चाहिए
सेटेक्ट आईडी से _table टी जॉइन (SELECT MIN (id) as_table GROUP BY आईडी आपके सभी फ़ील्ड यहां हैं) उप पर टी.आईडी = SUB.id
Comments
Post a Comment