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

तालिका 1 से सभी कॉलम और तालिका दो से एक कॉलम का चयन करें जिसे समूहीकृत किया गया है?

मैं listagg() . का उपयोग करूंगा एक सबक्वेरी में:

select t1.*, xmlagg
from table1 t1 join
     (select name2, listagg(mother_name, ',') within group (order by mother_name) as xmlagg
      from table2 t2
      group by name2
     ) t2
     on t1.name1 = t2.name2;

संपादित करें:

उपरोक्त क्वेरी शामिल होने से पहले एकत्रीकरण करती है, इसलिए यह t1.* . का उपयोग कर सकती है . आप इसे ज्वाइन करने के बाद भी कर सकते हैं:

select t1.name, listagg(mother_name, ',') within group (order by mother_name)
from table1 t1 join
     table2 t2
     on t1.name1 = t2.name2
group by t1.name;

यह फ़ॉर्म select . में अतिरिक्त कॉलम जोड़ना कठिन बना देता है , लेकिन आप अपनी पसंद की किसी भी चीज़ से जोड़ सकते हैं।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. वादों का उपयोग करते हुए ओराक्लेब चेनिंग एसक्यूएल कॉल

  2. 'तत्काल निष्पादित' करने के लिए गतिशील इनपुट पैरामीटर पास करना

  3. ऑरैकल में किसी स्थान से अलग पंक्तियों को कैसे सम्मिलित करें?

  4. sql स्टेटमेंट में टेबल मौजूद होने पर ऑरैकल डेटाबेस से ड्रॉप टेबल

  5. PLPDF_TOOLKIT PL/SQL पैकेज का उपयोग करके Oracle में एकाधिक PDF फ़ाइलों को एक PDF में मर्ज/एकीकृत करें