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

SQL फ़ंक्शन रिटर्न-प्रकार:तालिका बनाम SETOF रिकॉर्ड

SETOF record returning लौटाते समय आउटपुट कॉलम टाइप नहीं किए गए हैं और उनका नाम नहीं है। इस प्रकार इस फॉर्म का उपयोग सीधे FROM क्लॉज में नहीं किया जा सकता है जैसे कि यह एक सबक्वेरी या टेबल हो।

यानी जारी करते समय:

SELECT * from events_by_type_2('social');

हमें यह त्रुटि मिलती है:

हालांकि इसे SQL कॉलर द्वारा सही कॉलम प्रकारों में "कास्ट" किया जा सकता है। यह फ़ॉर्म काम करता है:

SELECT * from events_by_type_2('social') as (id bigint, name text);

और इसमें परिणाम:

 id |      name      
----+----------------
  1 | Dance Party
  2 | Happy Hour
 ...

इस कारण SETOF record कम व्यावहारिक माना जाता है। इसका उपयोग केवल तभी किया जाना चाहिए जब परिणामों के कॉलम प्रकार पहले से ज्ञात न हों।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. पैरामीटर TimeZone के लिए त्रुटि अमान्य मान पोस्टग्रेज करता है:UTC

  2. Django विंडो एनोटेशन अलग क्लॉज के साथ संयुक्त का उपयोग कर

  3. Django get_or_create iexact के साथ उपयोग किए जाने पर फ़ील्ड सेट करने में विफल रहता है

  4. foreach %dopar% + RPostgreSQL

  5. PostgreSQL बहु-स्तंभ आंशिक अनुक्रमणिका में डेटाटाइम बाधा जोड़ें