Oracle में काम करते समय, आप कुछ रिकॉर्ड्स पर डुप्लीकेट ढूंढ सकते हैं। आप डुप्लिकेट पंक्तियों को उनकी पहचान करके और संबंधित RowID उपनाम पंक्ति पते का उपयोग करके निकाल सकते हैं। शुरू करने से पहले, यदि रिकॉर्ड मिटाने के बाद आपको किसी संदर्भ की आवश्यकता हो तो एक बैकअप तालिका बनाएं।
कदम
विधि 1 में से 4: डुप्लिकेट की पहचान करना
चरण 1. डुप्लिकेट की पहचान करें।
इस उदाहरण में, हम डुप्लिकेट "एलन" की पहचान करते हैं। सुनिश्चित करें कि हटाए जाने वाले रिकॉर्ड वास्तव में नीचे SQL दर्ज करके डुप्लिकेट हैं।
चरण 2. "नाम" शीर्षक वाले कॉलम से पहचानें।
यदि कॉलम का शीर्षक "नाम" है, तो आपको " column_name " को नाम से बदलना होगा।
चरण 3. अन्य स्तंभों को पहचानें।
यदि आप अलग-अलग कॉलम से डुप्लिकेट की पहचान करने का प्रयास कर रहे हैं, उदाहरण के लिए एलन की उम्र उसके नाम के बजाय, "कॉलम_नाम" के स्थान पर "आयु" दर्ज करें और इसी तरह।
कॉलम_नाम का चयन करें, कॉलम_नाम द्वारा तालिका समूह से गिनती (कॉलम_नाम) गिनती (कॉलम_नाम)> 1;
विधि 2 का 4: एकल डुप्लिकेट निकालना
चरण 1. "नाम से नाम" चुनें।
"एसक्यूएल" (मानक क्वेरी भाषा के लिए संक्षिप्त) के बाद, "नामों से नाम चुनें" दर्ज करें।
चरण 2. डुप्लिकेट नामों वाली सभी पंक्तियों को हटा दें।
"एसक्यूएल" के बाद, "उन नामों से हटाएं जहां नाम = 'एलन';" दर्ज करें। यह ध्यान दिया जाना चाहिए कि यहां पूंजीकरण महत्वपूर्ण है ताकि यह चरण "एलन" नाम की सभी पंक्तियों को हटा सके। "एसक्यूएल" के बाद, "प्रतिबद्ध" दर्ज करें
चरण 3. डुप्लिकेट के बिना पंक्तियों को फिर से दर्ज करें।
अब जब आपने सभी पंक्तियों को हटा दिया है और उन्हें "एलन" से बदल दिया है, तो "नाम मानों में डालें ('एलन');" दर्ज करके एक को वापस भरें। "एसक्यूएल" के बाद, एक नई लाइन बनाने के लिए "कमिट" दर्ज करें।
चरण 4. नई सूची देखें।
उपरोक्त चरणों को पूरा करने के बाद, आप यह सुनिश्चित करने के लिए जांच कर सकते हैं कि "नामों से चुनें *" दर्ज करके कोई और डुप्लिकेट रिकॉर्ड नहीं हैं।
एसक्यूएल > नामों से नाम चुनें; नाम ----------------------------- एलन सिट्रा तोमी एलन बारिस चयनित। एसक्यूएल > उन नामों से हटाएं जहां नाम = 'एलन'; लाइन हटा दी जाती है। एसक्यूएल> करता है; \प्रतिबद्ध पूर्ण। SQL> नाम मानों में डालें ('एलन'); पंक्ति बनाई। एसक्यूएल> करता है; प्रतिबद्ध पूरा। एसक्यूएल> नामों से * चुनें; नाम ----------------------------- एलन सिट्रा तोमी पंक्तियों का चयन किया गया।
विधि 3 में से 4: एकाधिक डुप्लिकेट निकालना
चरण 1. उस पंक्ति का चयन करें जिसे आप हटाना चाहते हैं।
"एसक्यूएल" के बाद, "सिलेक्ट रोइड, नामों से नाम;" दर्ज करें।
चरण 2. डुप्लिकेट निकालें।
"एसक्यूएल" के बाद, "नामों से हटाएं जहां पंक्तिबद्ध> (नाम बी से न्यूनतम (पंक्ति) का चयन करें जहां b.name=a.name);" दर्ज करें। डुप्लिकेट को हटाने के लिए।
चरण 3. डुप्लिकेट के लिए जाँच करें।
उपरोक्त चरणों को पूरा करने के बाद, "सिलेक्ट रोइड, नेम फ्रॉम नेम्स" दर्ज करके डुप्लीकेट की जांच करें। फिर "प्रतिबद्ध"।
SQL> पंक्तिबद्ध का चयन करें, नामों से नाम; रोविद का नाम --------------------------------------------------- AABJnsAAGAAAdfOAAA एलन AABJnsAAGAAAdfOAAB एलन AABJnsAAGAAAdfOAAC कैरी AABJnsAAGAAAdfOAAD टॉम AABJnsAAGAAAdfOAAF एलन पंक्तियाँ चयनित। एसक्यूएल> नामों से हटाएं जहां पंक्तिबद्ध> (नाम बी से न्यूनतम (पंक्तिबद्ध) चुनें जहां b.name=a.name); पंक्तियाँ हटा दी गईं। SQL> पंक्तिबद्ध का चयन करें, नामों से नाम; रोविद का नाम --------------------------------------------------- AABJnsAAGAAAdfOAAA एलन AABJnsAAGAAAdfOAAC कैरी AABJnsAAGAAAdfOAAD टॉम पंक्तियों का चयन किया गया। एसक्यूएल> करता है; प्रतिबद्ध पूरा।
विधि 4 का 4: कॉलम द्वारा पंक्तियों को हटाना
चरण 1. पंक्ति का चयन करें।
"एसक्यूएल" के बाद, "नामों से चुनें *" दर्ज करें; लाइन देखने में सक्षम होने के लिए।
चरण 2. डुप्लिकेट पंक्तियों को उनके स्तंभों की पहचान करके निकालें।
"एसक्यूएल'" के बाद "नामों से हटाएं जहां पंक्तिबद्ध> (नाम बी से न्यूनतम (पंक्तिबद्ध) चुनें जहां b.name=a.name और b.age=a.age);" डुप्लिकेट रिकॉर्ड हटाने के लिए।
चरण 3. डुप्लिकेट के लिए जाँच करें।
एक बार जब आप ऊपर दिए गए चरणों को पूरा कर लें, तो "नामों से चुनें *" दर्ज करें; फिर "प्रतिबद्ध" यह देखने के लिए कि क्या डुप्लीकेट वास्तव में हटा दिए गए हैं।
एसक्यूएल> नामों से * चुनें; नाम आयु ---------------------------- ---------- एलन ५० सिट्रा ५१ तोमी ५२ एलन ५० पंक्तियों का चयन किया। SQL > नामों से हटाएं जहां पंक्तिबद्ध > (नाम b से न्यूनतम (पंक्तिबद्ध) चुनें जहां b.name=a.name और b.age=a.age); पंक्ति हटा दी गई। एसक्यूएल> नामों से * चुनें; नाम आयु ---------------------------- ---------- एलन ५० सिट्रा ५१ तोमी ५२ पंक्तियाँ चयनित. एसक्यूएल> करता है; प्रतिबद्ध पूरा।
चेतावनी
-
अपने लॉगिन में एक डुप्लिकेट तालिका बनाएं ताकि जब कोई डेटा हटाया नहीं गया हो (यदि आपके कोई प्रश्न हों तो) सामग्री संदर्भ के रूप में इसका उपयोग किया जा सकता है।
SQL > तालिका बनाएं alan.names_backup के रूप में चुनें * नामों से; तालिका बनाई गई।