PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

एक एनम के सभी मान प्राप्त करने के लिए SQL क्वेरी

यदि आप एक सरणी चाहते हैं:

SELECT enum_range(NULL::myenum)

यदि आप एनम में प्रत्येक आइटम के लिए एक अलग रिकॉर्ड चाहते हैं:

SELECT unnest(enum_range(NULL::myenum))  

अतिरिक्त जानकारी

यह समाधान अपेक्षित रूप से काम करता है, भले ही आपका एनम डिफ़ॉल्ट स्कीमा में न हो। उदाहरण के लिए, myenum . को बदलें myschema.myenum . के साथ ।

उपरोक्त क्वेरी में लौटाए गए रिकॉर्ड का डेटा प्रकार myenum . होगा . आप जो कर रहे हैं उसके आधार पर, आपको टेक्स्ट पर कास्ट करने की आवश्यकता हो सकती है। उदा.

SELECT unnest(enum_range(NULL::myenum))::text

यदि आप कॉलम का नाम निर्दिष्ट करना चाहते हैं, तो आप AS my_col_name . जोड़ सकते हैं .

कुछ अतिरिक्त युक्तियों को इंगित करने के लिए जस्टिन ओहम्स को श्रेय, जिन्हें मैंने अपने उत्तर में शामिल किया।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ubuntu 16.04 पर PostgreSQL डेटाबेस बनाना और हटाना

  2. एक बार में postgresql.conf, पैरामीटर को कम करना

  3. Postgresql में एक-के-दो नहीं शून्य बाधा जोड़ना

  4. SQLAlchemy के माध्यम से Postgresql के साथ कई कथनों को निष्पादित करना परिवर्तन जारी नहीं रखता है

  5. psycopg2 के साथ बाइनरी कॉपी टेबल का उपयोग करें