PostgreSQL ऐरे क्या है?
PostgreSQL में, हम एक कॉलम को मान्य डेटा प्रकारों की एक सरणी के रूप में परिभाषित कर सकते हैं। डेटा प्रकार को अंतर्निहित, उपयोगकर्ता-परिभाषित, या एनुमरेटेड प्रकार बनाया जा सकता है। इसके अलावा, सरणियाँ PostgreSQL में एक महत्वपूर्ण भूमिका निभाती हैं।
प्रत्येक संगत PostgreSQL डेटा प्रकार एक प्रासंगिक सरणी प्रकार के साथ आता है। उदाहरण के लिए, पूर्णांक डेटा प्रकार में पूर्णांक [] सरणी प्रकार होता है, वर्ण डेटा प्रकार में वर्ण [] सरणी प्रकार होता है, आदि।
इस PostgreSQL ट्यूटोरियल में, आप सीखेंगे:
- PostgreSQL ऐरे क्या है?
- PostgreSQL Arrays बनाना
- PostgreSQL सरणी मान सम्मिलित करना
- एरियर डेटा को छोड़ना
- PostgreSQL सरणी को संशोधित करना
- एक PostgreSQL सरणी में खोज
- विस्तार एरे
- PgAdmin का उपयोग करना
PostgreSQL Arrays बनाना
निम्नलिखित उदाहरण में, हम एक सारणी बनायेंगें जिसमें कर्मचारी नाम के साथ एक पाठ सरणी के रूप में परिभाषित संपर्क स्तंभ हो:
CREATE TABLE Employees (id int PRIMARY KEY,name VARCHAR (100),contact TEXT []);
कमांड सफलतापूर्वक चलना चाहिए।
PostgreSQL सरणी मान सम्मिलित करना
आइए अब उपरोक्त तालिका में मान डालें:
INSERT INTO EmployeesVALUES(1,'Alice John',ARRAY [ '(408)-743-9045','(408)-567-7834' ]);
सम्मिलन सफलतापूर्वक चलना चाहिए।
तीसरे कॉलम के मान, यानी, संपर्क को एक सरणी के रूप में सम्मिलित किया गया है। यह ARRAY कंस्ट्रक्टर के उपयोग द्वारा प्राप्त किया गया है।
इस उदाहरण में, हमने उन्हें वर्ग कोष्ठक [] के भीतर संलग्न किया है। हमारे पास कर्मचारी एलिस जॉन के लिए दो संपर्क हैं।
हमारे लिए अभी भी नीचे दिए गए अनुसार घुंघराले ब्रेस {} का उपयोग करना संभव है:
INSERT INTO EmployeesVALUES(2,'Kate Joel','{"(408)-783-5731"}'),(3,'James Bush','{"(408)-745-8965","(408)-567-78234"}');
आदेश सफलतापूर्वक चलना चाहिए।
उपरोक्त कथन कर्मचारी तालिका में दो पंक्तियाँ डालेंगे। घुंघराले ब्रेसिज़ का उपयोग करते समय, सरणी एकल उद्धरण (') के अंदर लपेटी जाती है, जबकि पाठ सरणी आइटम डबल उद्धरण (") के भीतर लिपटे होते हैं।
एरियर डेटा को छोड़ना
किसी सरणी के तत्वों को क्वेरी करने के लिए, हम SELECT स्टेटमेंट का उपयोग करते हैं।
हमारे कर्मचारी तालिका की सामग्री देखने के लिए, हम निम्नलिखित कमांड चलाते हैं:
SELECT * FROM Employees;
यह निम्नलिखित देता है:
सरणी कॉलम के तत्व, अर्थात, संपर्क, घुंघराले ब्रेस {} के भीतर संलग्न किए गए हैं।
सरणी तत्वों को स्वयं एक्सेस करने के लिए, हम वर्ग कोष्ठक [] के भीतर एक सबस्क्रिप्ट जोड़ते हैं। सरणी में पहला तत्व स्थिति 1 पर है।
उदाहरण के लिए, हमें कर्मचारियों के नाम प्राप्त करने की आवश्यकता है और केवल एक संपर्क वाले उन कर्मचारियों के लिए उनका पहला संपर्क है। हम इसे संपर्क [1] के रूप में देख सकते हैं।
आइये इसे देखते हैं:
SELECT name, contact[1]FROM Employees;
यह निम्नलिखित लौटाएगा:
हम सरणी कॉलम के आधार पर पंक्तियों को फ़िल्टर करने के लिए WHERE क्लॉज़ के साथ सेलेक्ट स्टेटमेंट का उपयोग कर सकते हैं।
उदाहरण के लिए, कर्मचारी (408) -567-78234 को दूसरे संपर्क के रूप में देखने के लिए, हम निम्नलिखित कमांड चला सकते हैं:
SELECTnameFROMEmployeesWHEREcontact [ 2 ] = '(408)-567-78234';
यह निम्नलिखित लौटाएगा:
PostgreSQL सरणी को संशोधित करना
आप किसी सरणी के सभी या एकल तत्व को अपडेट कर सकते हैं।
यहां कर्मचारी तालिका की सामग्री दी गई है:
आइए हम कर्मचारी जेम्स बुश के दूसरे फोन नंबर को अपडेट करें, जिसकी आईडी 3 है:
निम्न आदेश चलाएँ:
UPDATE EmployeesSET contact [ 2 ] = '(408)-589-89347'WHEREid = 3;
आदेश सफलतापूर्वक चलना चाहिए:
हमें यह जांचने के लिए तालिका में क्वेरी करें कि क्या परिवर्तन सफल था:
बदलाव सफल रहा।
एक PostgreSQL सरणी में खोज
वर्तमान में, हमारी कर्मचारी तालिका इस प्रकार है:
मान लें कि हमें यह जानने की जरूरत है कि संपर्क (408) -783-5731 के मालिक कौन हैं, संपर्क सरणी के भीतर की स्थिति की परवाह किए बिना, हम नीचे दिखाए गए अनुसार किसी भी () फ़ंक्शन का उपयोग कर सकते हैं:
SELECTname,contactFROMEmployeesWHERE'(408)-783-5731' = ANY (contact);
यह निम्नलिखित लौटाएगा:
विस्तार एरे
हम किसी सरणी के मान को पंक्तियों में विभाजित कर सकते हैं। इस प्रक्रिया को सरणी विस्तार के रूप में जाना जाता है।
कर्मचारी तालिका के उदाहरण में, संपर्क सरणी में दो संपर्कों वाले कुछ कर्मचारी हैं। हम इन्हें अलग-अलग पंक्तियों में विभाजित कर सकते हैं।
PostgreSQL अनावश्यक () फ़ंक्शन प्रदान करता है जिसका उपयोग इसके लिए किया जा सकता है।
उदाहरण के लिए:
SELECTname,unnest(contact)FROMEmployees;
यह निम्नलिखित लौटाएगा:
एलिस जॉन और जेम्स बुश के कर्मचारियों के दो संपर्क हैं। हम अलग-अलग पंक्तियों में विभाजित हो सकते हैं।
PgAdmin का उपयोग करना
PostgreSQL Arrays बनाना
PgAdmin के माध्यम से इसे पूरा करने के लिए, यह करें:
चरण 1) अपने pgAdmin खाते में लॉगिन करें।
चरण 2)
- बाईं ओर नेविगेशन बार से- rbases पर क्लिक करें।
- डेमो बटन पर क्लिक करें
चरण 3) कर्मचारी तालिका बनाने के लिए क्वेरी संपादक में क्वेरी टाइप करें:
CREATE TABLE Employees (id int PRIMARY KEY,name VARCHAR (100),contact TEXT []);
चरण 4) निष्पादित बटन पर क्लिक करें।
PostgreSQL सरणी मान सम्मिलित करना
चरण 1) क्वेरी संपादक में निम्नलिखित प्रश्न टाइप करें:
INSERT INTO EmployeesVALUES(1,'Alice John',ARRAY [ '(408)-743-9045','(408)-567-7834' ]);
चरण 2) निष्पादित बटन पर क्लिक करें:
चरण 3)
क्वेरी में घुंघराले ब्रेसिज़ का उपयोग करने के लिए
चरण 1) क्वेरी संपादक में निम्नलिखित प्रश्न टाइप करें:
INSERT INTO EmployeesVALUES(2,'Kate Joel','{"(408)-783-5731"}'),(3,'James Bush','{"(408)-745-8965","(408)-567-78234"}');
चरण 2) निष्पादित बटन पर क्लिक करें:
एरियर डेटा को छोड़ना
चरण 1) कर्मचारी तालिका की सामग्री को देखने के लिए, क्वेरी संपादक पर निम्नलिखित प्रश्न लिखें:
SELECT * FROM Employees;
चरण 2) निष्पादित बटन पर क्लिक करें:
इसे निम्नलिखित लौटाना चाहिए:
चरण 3) कर्मचारियों के पहले संपर्कों को देखने के लिए:
- क्वेरी संपादक में निम्न क्वेरी टाइप करें:
SELECT name, contact[1]FROM Employees;
- Execute बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
चरण 4) चयन कथन को जहां क्लॉज के साथ संयोजित करना है:
- क्वेरी संपादक पर निम्न कमांड टाइप करें:
SELECTnameFROMEmployeesWHEREcontact [ 2 ] = '(408)-567-78234';
- Execute बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
PostgreSQL सरणी को संशोधित करना
चरण 1) 3 की आईडी के साथ उपयोगकर्ता के दूसरे संपर्क को अपडेट करने के लिए, निम्न कमांड चलाएँ:
UPDATE EmployeesSET contact [ 2 ] = '(408)-589-89347'WHEREid = 3;
चरण 2) निष्पादित बटन पर क्लिक करें।
चरण 3)
1. क्वेरी संपादक पर निम्न कमांड की जाँच करें कि क्या परिवर्तन सफल था:
SELECT * FROM Employees;
2. निष्पादित बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
एक PostgreSQL सरणी में खोज
चरण 1) क्वेरी संपादक में निम्नलिखित प्रश्न टाइप करें:
SELECTname,contactFROMEmployeesWHERE'(408)-783-5731' = ANY (contact);
चरण 2) निष्पादित बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
विस्तार एरे
चरण 1) क्वेरी संपादक में निम्नलिखित प्रश्न टाइप करें:
SELECTname,unnest(contact)FROMEmployees;
चरण 2) निष्पादित बटन पर क्लिक करें।
इसे निम्नलिखित लौटाना चाहिए:
सारांश:
- PostgreSQL हमें एक सरणी प्रकार के रूप में एक टेबल कॉलम को परिभाषित करने की अनुमति देता है।
- सरणी एक मान्य डेटा प्रकार जैसे पूर्णांक, वर्ण या उपयोगकर्ता-परिभाषित प्रकार की होनी चाहिए।
- एक सरणी कॉलम में मान डालने के लिए, हम ARRAY कंस्ट्रक्टर का उपयोग करते हैं।
- यदि किसी सरणी स्तंभ की समान पंक्ति में एक से अधिक तत्व हैं, तो पहला तत्व स्थिति 1 पर है।
- प्रत्येक मूल्य वर्ग कोष्ठक के भीतर एक सबस्क्रिप्ट पास करके पहुँचा जा सकता है []।
- सरणी के तत्वों को SELECT स्टेटमेंट का उपयोग करके पुनः प्राप्त किया जा सकता है।
- सरणी स्तंभ के मानों को वर्ग कोष्ठक [] या घुंघराले ब्रेस {} के भीतर संलग्न किया जा सकता है।
- हम किसी भी () फ़ंक्शन का उपयोग करके सरणी कॉलम मानों के लिए खोज कर सकते हैं।
इस ट्यूटोरियल में प्रयुक्त डेटाबेस डाउनलोड करें