उदाहरण के साथ PostgreSQL EXISTS

विषय - सूची:

Anonim

PostgreSQL एक्ज़िस्ट क्या है?

EXISTS ऑपरेटर परीक्षण करता है कि क्या उप पंक्ति में एक पंक्ति मौजूद है। इसका मतलब यह है कि ऑपरेटर का उपयोग एक सबक्वेरी के साथ किया जाता है। कहा जाता है कि उप-संचालक तब मिले होते हैं जब उपनगर में कम से कम एक पंक्ति पाई जाती है। आप इस ऑपरेशन को SELECT, UPDATE, INSERT और DELETE स्टेटमेंट्स के साथ उपयोग कर सकते हैं।

इस PostgreSQL ट्यूटोरियल में, आप निम्नलिखित सीखेंगे:

  • वाक्य - विन्यास
  • सेलेक्ट स्टेटमेंट के साथ
  • INSERT स्टेटमेंट के साथ
  • अद्यतन विवरण के साथ
  • DELETE स्टेटमेंट के साथ
  • PgAdmin के साथ

वाक्य - विन्यास

यहाँ PostgreSQL EXISTS स्टेटमेंट के लिए वाक्य रचना है:

WHERE EXISTS (subquery);

उपरोक्त सिंटैक्स दिखाता है कि EXISTS ऑपरेटर एक तर्क में लेता है, जो एक उपश्रेणी है। उपश्रेणी केवल एक सेलेक्ट स्टेटमेंट है, जिसे कॉलम नामों या अभिव्यक्तियों की सूची के बजाय एक SELECT * से शुरू करना चाहिए।

सेलेक्ट स्टेटमेंट के साथ

देखते हैं कि EXISTS ऑपरेटर के साथ SELECT स्टेटमेंट का उपयोग कैसे करें। हमारे पास निम्न तालिकाएँ हैं:

पुस्तक:

कीमत:

निम्न कथन चलाएँ:

SELECT *FROM BookWHERE EXISTS (SELECT *FROM PriceWHERE Book.id = Price.id);

यह निम्नलिखित देता है:

उपरोक्त कमांड को बुक टेबल में सभी रिकॉर्ड वापस करने चाहिए जिनकी आईडी उपखंड द्वारा किसी भी रिकॉर्ड की आईडी से मेल खाती है। केवल एक आईडी का मिलान किया गया। इसलिए, केवल एक रिकॉर्ड वापस किया गया था।

INSERT स्टेटमेंट के साथ

हम INSERT बयान में EXISTS ऑपरेटर का उपयोग कर सकते हैं। हमारे पास निम्नलिखित 3 टेबल हैं:

पुस्तक:

कीमत:

मूल्य 2:

हम तब निम्न कथन चला सकते हैं:

INSERT INTO PriceSELECT id, priceFROM Price2WHERE EXISTS (SELECT idFROM BookWHERE Book.id = Price2.id);

मूल्य तालिका अब इस प्रकार है:

Price2 नामक तालिका में 5 की आईडी वाली पंक्ति का मिलान किया गया। यह रिकॉर्ड तब मूल्य तालिका में डाला गया था।

अद्यतन विवरण के साथ

हम एक अद्यतन कथन में EXISTS ऑपरेटर का उपयोग कर सकते हैं।

निम्नलिखित क्वेरी चलाएँ:

UPDATE PriceSET price = (SELECT priceFROM Price2WHERE Price2.id = Price.id)WHERE EXISTS (SELECT id, priceFROM Price2WHERE Price2.id = Price.id);

हम मूल्य तालिका के मूल्य कॉलम को अपडेट कर रहे हैं। हमारा उद्देश्य एक ही होने के लिए एक आईडी साझा करने वाले आइटम की कीमतें हैं। केवल एक पंक्ति का मिलान किया गया था, अर्थात 5।

हालांकि, चूंकि कीमतें समान हैं, अर्थात 205, कोई अद्यतन नहीं किया गया था। यदि अंतर होता, तो एक अद्यतन किया जाता।

DELETE स्टेटमेंट के साथ

एक PostgreSQL DELETE कथन EXISTS ऑपरेटर का उपयोग कर सकता है। यहाँ एक उदाहरण है:

DELETE FROM PriceWHERE EXISTS (SELECT *FROM Price2WHERE Price.id = Price2.id);

मूल्य तालिका अब इस प्रकार है:

5 की आईडी वाली पंक्ति हटा दी गई है।

PgAdmin के साथ

अब देखते हैं कि pgAdmin का उपयोग करके इन क्रियाओं को कैसे किया जा सकता है।

सेलेक्ट स्टेटमेंट के साथ

PgAdmin के माध्यम से इसे पूरा करने के लिए, यह करें:

चरण 1) अपने pgAdmin खाते में लॉगिन करें।

चरण 2)

  1. बाईं ओर नेविगेशन बार से- डेटाबेस पर क्लिक करें।
  2. डेमो पर क्लिक करें।

चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:

SELECT *FROM BookWHERE EXISTS (SELECT *FROM PriceWHERE Book.id = Price.id);

चरण 4) निष्पादित बटन पर क्लिक करें।

इसे निम्नलिखित लौटाना चाहिए:

INSERT स्टेटमेंट के साथ

PgAdmin के माध्यम से इसे पूरा करने के लिए, यह करें:

चरण 1) अपने pgAdmin खाते में लॉगिन करें।

चरण 2)

  1. बाईं ओर नेविगेशन बार से- डेटाबेस पर क्लिक करें।
  2. डेमो पर क्लिक करें।

चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:

INSERT INTO PriceSELECT id, priceFROM Price2WHERE EXISTS (SELECT idFROM BookWHERE Book.id = Price2.id);

चरण 4) निष्पादित बटन पर क्लिक करें।

मूल्य तालिका अब इस प्रकार होनी चाहिए:

अद्यतन विवरण के साथ

PgAdmin के माध्यम से इसे पूरा करने के लिए, यह करें:

चरण 1) अपने pgAdmin खाते में लॉगिन करें।

चरण 2)

  1. बाईं ओर नेविगेशन बार से- डेटाबेस पर क्लिक करें।
  2. डेमो पर क्लिक करें।

चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:

UPDATE PriceSET price = (SELECT priceFROM Price2WHERE Price2.id = Price.id)WHERE EXISTS (SELECT id, priceFROM Price2WHERE Price2.id = Price.id);

चरण 4) निष्पादित बटन पर क्लिक करें।

मूल्य तालिका अब इस प्रकार होनी चाहिए:

DELETE स्टेटमेंट के साथ

PgAdmin के माध्यम से इसे पूरा करने के लिए, यह करें:

चरण 1) अपने pgAdmin खाते में लॉगिन करें।

चरण 2)

  1. बाईं ओर नेविगेशन बार से- डेटाबेस पर क्लिक करें।
  2. डेमो पर क्लिक करें।

चरण 3) क्वेरी संपादक में क्वेरी टाइप करें:

DELETE FROM PriceWHERE EXISTS (SELECT *FROM Price2WHERE Price.id = Price2.id);

चरण 4) निष्पादित बटन पर क्लिक करें।

मूल्य तालिका अब इस प्रकार होनी चाहिए:

सारांश

  • EXISTS ऑपरेटर परीक्षण करता है कि क्या उप पंक्ति में एक पंक्ति मौजूद है।
  • इसका उपयोग एक उपकुंजी के साथ किया जाता है और कहा जाता है कि जब उपकुंजी कम से कम एक पंक्ति में लौटती है तो उसे पूरा किया जाता है।
  • इसका उपयोग SELECT, UPDATE, INSERT और DELETE कथनों के साथ किया जाता है।

इस ट्यूटोरियल में प्रयुक्त डेटाबेस डाउनलोड करें