PostgreSQL चयनित पंक्तियों से पंक्तियाँ हटाएँ
⚡ स्मार्ट सारांश
PostgreSQL DELETE कमांड टेबल से एक या अधिक पंक्तियों को हटाता है, और इसे WHERE क्लॉज़ के साथ उपयोग करने पर केवल वही रिकॉर्ड लक्षित होते हैं जो किसी शर्त से मेल खाते हैं, जबकि WHERE क्लॉज़ को छोड़ देने पर टेबल की सभी पंक्तियाँ साफ़ हो जाती हैं।

क्वेरी हटाएं PostgreSQL
RSI DELETE कथन in PostgreSQL इसका उपयोग किसी टेबल से एक या अधिक रिकॉर्ड हटाने के लिए किया जाता है। टेबल से केवल चयनित पंक्तियों को हटाने के लिए, PostgreSQL यह आपको DELETE स्टेटमेंट को WHERE क्लॉज़ के साथ संयोजित करने की अनुमति देता है; अन्यथा, यह टेबल के सभी रिकॉर्ड हटा देता है।
PostgreSQL डिलीट क्वेरी सिंटैक्स
DELETE स्टेटमेंट को नीचे दिए गए सिंटैक्स का उपयोग करके परिभाषित किया जा सकता है:
[ WITH [ RECURSIVE ] with-query [, ...] ] DELETE FROM [ ONLY ] table-name [ * ] [ [ AS ] alias ] [ USING using-list ] [ WHERE condition(s) | WHERE CURRENT OF cursor-name] [ RETURNING * | output-expression [ [ AS ] output-name] [, ...] ]
पैरामीटर्स
निम्नलिखित पैरामीटर उपलब्ध हैं:
- साथ-प्रश्नWITH क्लॉज़ आपको DELETE क्वेरी के अंदर नाम से एक या अधिक सबक्वेरी को संदर्भित करने की अनुमति देता है।
- तालिका नाम: उस तालिका का नाम जिसमें से रिकॉर्ड हटाए जाने हैं।
- उर्फ: लक्ष्य तालिका के नाम का विकल्प।
- उपयोग-सूची: टेबल एक्सप्रेशन जो अन्य टेबल के कॉलम को WHERE क्लॉज़ में उपयोग करने की अनुमति देते हैं।
- स्थितियाँ): वैकल्पिक। रिकॉर्ड हटाने के लिए इन शर्तों का पूरा होना आवश्यक है। यदि यह अनुभाग प्रदान नहीं किया जाता है, तो तालिका-नाम से संबंधित सभी रिकॉर्ड हटा दिए जाएंगे।
- कर्सर-नाम: यह कर्सर WHERE CURRENT OF शर्त में उपयोग किया जाएगा। इस कर्सर द्वारा प्राप्त की गई अंतिम पंक्ति को हटा दिया जाएगा।
- आउटपुट-अभिव्यक्ति: प्रत्येक पंक्ति को हटाने के बाद DELETE स्टेटमेंट द्वारा संसाधित और लौटाया जाने वाला एक्सप्रेशन।
- आउटपुट-नाम: लौटाए गए कॉलम के लिए उपयोग किया जाने वाला नाम.
ध्यान दें कि चूंकि DELETE स्टेटमेंट पूरी पंक्ति को हटा देता है, इसलिए आपको कॉलम के नाम निर्दिष्ट करने की आवश्यकता नहीं है।
PostgreSQL एक शर्त के साथ क्वेरी हटाएं
DELETE स्टेटमेंट का उपयोग एक ही शर्त के साथ किया जा सकता है, जिसे WHERE क्लॉज़ का उपयोग करके सेट किया जाता है। मान लीजिए Price टेबल में निम्नलिखित डेटा है:
मूल्य:
आइए 4 आईडी वाले रिकॉर्ड को हटा दें:
DELETE FROM Price WHERE id = 4;
उपरोक्त कमांड उन रिकॉर्ड्स को हटाता है जिनमें आईडी 4 है। आइए पुष्टि करें कि विलोपन सफल रहा या नहीं:
4 आईडी वाली पंक्ति हटा दी गई है।
दो शर्तों वाली क्वेरी हटाएं
RSI PostgreSQL DELETE स्टेटमेंट में दो शर्तें भी हो सकती हैं। इन दोनों शर्तों को AND ऑपरेटर का उपयोग करके जोड़ा जाना चाहिए। हम निम्नलिखित तालिका का उपयोग करेंगे:
मूल्य:
नीचे दिए गए उदाहरण पर विचार करें:
DELETE FROM Price WHERE id = 3 AND price = 300;
उपरोक्त कमांड में, हम उस पंक्ति को हटा रहे हैं जिसमें आईडी 3 है और कीमत 300 है। अब हम तालिका को क्वेरी कर सकते हैं:
SELECT * FROM Price;
यह निम्नलिखित लौटाता है:
आईडी 3 और कीमत 300 वाला रिकार्ड हटा दिया गया।
PostgreSQL EXISTS शर्त का उपयोग करके डिलीट क्वेरी
उसके साथ मौजूद है यदि आवश्यक हो, तो आप DELETE प्रक्रिया को अधिक जटिल बना सकते हैं। कभी-कभी एक टेबल में मौजूद रिकॉर्ड को दूसरी टेबल में मौजूद रिकॉर्ड के आधार पर डिलीट करने की आवश्यकता हो सकती है।
डिलीट ऑपरेशन करते समय FROM क्लॉज़ एक से अधिक टेबल से रिकॉर्ड लिस्ट करने की अनुमति नहीं देता है, इसलिए EXISTS क्लॉज़ बहुत उपयोगी हो जाता है। हमारे पास निम्नलिखित दो टेबल हैं:
किताब:
मूल्य:
फिर हम निम्नलिखित क्वेरी चला सकते हैं:
DELETE FROM Book WHERE EXISTS (SELECT 1 FROM Price WHERE Price.id = Book.id AND price < 250 );
यह कमांड बुक टेबल से उन पंक्तियों को हटाता है जिनका प्राइस टेबल में मौजूद आईडी से मेल खाता हो और जिनकी कीमत 250 से कम हो।
पुस्तक तालिका अब इस प्रकार है:
1 आईडी वाला रिकार्ड हटा दिया गया।
किसी पंक्ति को कैसे हटाएं PostgreSQL pgAdmin का उपयोग करके
नीचे दिए गए चरणों का पालन करके, pgAdmin इंटरफ़ेस के माध्यम से भी इन्हीं डिलीट क्वेरी को विज़ुअली चलाया जा सकता है:
एक शर्त के साथ
चरण 1) अपने pgAdmin खाते में लॉग इन करें। pgAdmin खोलें और अपने क्रेडेंशियल का उपयोग करके अपने खाते में लॉग इन करें।
चरण 2) एक डेमो डेटाबेस बनाएं।
- बाईं ओर स्थित नेविगेशन बार से, डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें.
चरण 3) क्वेरी संपादक में नीचे दी गई क्वेरी टाइप करें:
DELETE FROM Price WHERE id = 4;
चरण 4) निष्पादित करें बटन पर क्लिक करें.
चरण 5) आइए जांच करें कि पंक्ति हटाई गई थी या नहीं:
दो शर्तों के साथ
चरण 1) अपने pgAdmin खाते में लॉगिन करें.
चरण 2)
- बाईं ओर स्थित नेविगेशन बार से, डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें.
चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:
DELETE FROM Price WHERE id = 3 AND price = 300;
चरण 4) निष्पादित करें बटन पर क्लिक करें.
चरण 5) आइए जाँचें कि क्या हटाना सफल रहा:
EXISTS शर्त का उपयोग करना
चरण 1) अपने pgAdmin खाते में लॉगिन करें.
चरण 2)
- बाईं ओर स्थित नेविगेशन बार से, डेटाबेस पर क्लिक करें।
- डेमो पर क्लिक करें.
चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:
DELETE FROM Book WHERE EXISTS (SELECT 1 FROM Price WHERE Price.id = Book.id AND price < 250 );
चरण 4) निष्पादित करें बटन पर क्लिक करें.
चरण 5) आइए जाँचें कि क्या हटाना सफल रहा:
इस ट्यूटोरियल में प्रयुक्त डेटाबेस डाउनलोड करें
















