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

JSON_ARRAYAGG () Oracle में फ़ंक्शन

Oracle डाटाबेस में, JSON_ARRAYAGG() फ़ंक्शन SQL अभिव्यक्तियों के कॉलम से JSON सरणी बनाता है।

सिंटैक्स

वाक्य रचना इस प्रकार है:

JSON_ARRAYAGG
  ( expr [ FORMAT JSON ]  [ order_by_clause ]
    [ JSON_on_null_clause ] [ JSON_agg_returning_clause ]
    [ STRICT ] 
  )

कहां:

  • expr कोई भी SQL अभिव्यक्ति है जो JSON ऑब्जेक्ट, JSON सरणी, संख्यात्मक शाब्दिक, टेक्स्ट शाब्दिक, या null का मूल्यांकन करती है ।
  • FORMAT JSON इंगित करता है कि इनपुट स्ट्रिंग JSON है, और इसलिए इसे आउटपुट में उद्धृत नहीं किया जाएगा।
  • order_by_clause आपको कथन द्वारा लौटाए गए JSON सरणी के भीतर JSON मानों को ऑर्डर करने की अनुमति देता है।
  • JSON_on_null_clause उपयोग करने के लिए व्यवहार निर्दिष्ट करता है जब expr शून्य का मूल्यांकन करता है (यानी या तो आउटपुट में शून्य मान शामिल करें या नहीं)।
  • JSON_agg_returning_clause इस फ़ंक्शन द्वारा लौटाए गए वर्ण स्ट्रिंग के डेटा प्रकार को निर्दिष्ट करता है।
  • STRICT जाँचता है कि JSON जनरेशन फ़ंक्शन का आउटपुट सही JSON है या नहीं। यदि चेक विफल हो जाता है, तो सिंटैक्स त्रुटि उत्पन्न हो जाती है।

उदाहरण

मान लीजिए कि हम निम्नलिखित SQL क्वेरी चलाते हैं:

SELECT region_name
FROM regions;

और यह निम्न आउटपुट देता है:

              REGION_NAME 
_________________________ 
Europe                    
Americas                  
Asia                      
Middle East and Africa    

यदि हम चाहते हैं कि वे सभी मान JSON सरणी में तत्व हों, तो हम कॉलम नाम को JSON_ARRAYAGG() में पास कर सकते हैं समारोह।

इस तरह:

SELECT JSON_ARRAYAGG(region_name)
FROM regions;

परिणाम:

["Europe","Americas","Asia","Middle East and Africa"]

अनुबंध द्वारा आदेश

यहां ORDER BY . का उपयोग करने का एक उदाहरण दिया गया है समारोह के भीतर खंड:

SELECT JSON_ARRAYAGG(
    region_name ORDER BY region_name DESC
    )
FROM regions;

परिणाम:

["Middle East and Africa","Europe","Asia","Americas"]

उस उदाहरण ने सरणी तत्वों को अवरोही क्रम में क्रमबद्ध किया।

यहाँ यह आरोही क्रम में है:

SELECT JSON_ARRAYAGG(
    region_name ORDER BY region_name ASC
    )
FROM regions;

परिणाम:

["Americas","Asia","Europe","Middle East and Africa"]

इस फ़ंक्शन के बारे में अधिक जानकारी के लिए Oracle दस्तावेज़ देखें।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle में डिफ़ॉल्ट बाधा नाम क्या है?

  2. सीआरएस 11.2.0

  3. आरटीआरआईएम मुद्दे के साथ एक्सएमएलएजीजी

  4. साफ़ स्क्रीन - Oracle SQL डेवलपर शॉर्टकट?

  5. Oracle में REGEXP_SUBSTR () फ़ंक्शन