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

LISTAGG क्वेरी ORA-00937:एकल-समूह समूह फ़ंक्शन नहीं

मुझे लगता है कि आपकी क्वेरी के काम करने के लिए, आपको एक group by add जोड़ना होगा , order by . आपको उचित स्पष्ट जॉइन सिंटैक्स का भी उपयोग करना चाहिए:

SELECT r.rule_id as RULE_ID, 
       LISTAGG(a.ATTRIBUTE_ID, ', ') WITHIN GROUP (ORDER BY a.ATTRIBUTE_ID) as "ATTR_IDS"
FROM N_RULE r JOIN
     N_ATTRIBUTE a 
     ON r.RULE_ID = a.RULE_ID 
GROUP BY r.rule_id
ORDER BY r.rule_id;

या, संभवतः आप परिणामों में अन्य विशेषता शामिल करना चाहते हैं:

SELECT r.rule_id, r.AUDIENCE, UPPER(r.NAME) 
       LISTAGG(a.ATTRIBUTE_ID, ', ') WITHIN GROUP (ORDER BY a.ATTRIBUTE_ID) as "ATTR_IDS"
FROM N_RULE r JOIN
     N_ATTRIBUTE a 
     ON r.RULE_ID = a.RULE_ID 
GROUP BY r.rule_id, r.AUDIENCE, UPPER(r.NAME)
ORDER BY r.AUDIENCE, UPPER(r.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. Oracle पिवट क्वेरी कॉलम नामों के आसपास उद्धरणों के साथ कॉलम देती है। क्या?

  2. Oct2014CPU, ArcGIS डेस्कटॉप को क्रैश करता है

  3. पीएल/एसक्यूएल में अल्पविराम से अलग स्ट्रिंग को सरणी में कनवर्ट करें

  4. Oracle - sql डेवलपर से स्क्रिप्ट कैसे उत्पन्न करें

  5. एसक्यूएल दो अद्वितीय कॉलम के साथ सबसे हाल की तारीख से पंक्तियों का चयन