मैं 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
. में अतिरिक्त कॉलम जोड़ना कठिन बना देता है , लेकिन आप अपनी पसंद की किसी भी चीज़ से जोड़ सकते हैं।