2012-02-01 14 views
8

संभव डुप्लिकेट:
How can I combine multiple rows into a comma-delimited list in Oracle?Oracle में अल्पविराम से अलग मूल्यों में एसक्यूएल पंक्तियाँ रूपांतरण

आप कैसे एक बनाने के बिना एसक्यूएल में वापसी पंक्तियों की सूची में से एक अल्पविराम विभाजित मान उत्पादन कर सकते हैं समारोह? डुप्लीकेट और शून्य या मूल्य के रूप में 'कोई नहीं' को हटाने की आवश्यकता है।

उदाहरण: select name from student;

परिणाम:

  NAME   
     ------ 
     Zed 
     Charlo 
     None 
     Charlo 
     Dionn 
     Ansay 

वांछित उत्पादन:

   Name 
      ------- 
      Zed,Charlo,Dionn,Ansay 
+1

यह एक शिकार मैं आश्चर्य होगा नहीं है । –

+0

पहले हिट: http://stackoverflow.com/questions/468990/how-can-i-combine-multiple-rows-into-a-comma-delimited-list-in-oracle –

+0

बीटीडब्ल्यू: यदि आपके पास कोई ओरेकल प्रश्न है , "टॉम काइट" –

उत्तर

20

http://sqlfiddle.com/#!4/9ad65/2

select 
    listagg(name, ',') 
    within group (order by id) as list 
from student 
+4

के साथ अपनी इंटरनेट खोज उपसर्ग करें पूर्ण प्रकटीकरण: sqlfiddle.com मेरी साइट है। –

+0

@ जेकफिसल एसक्यूएल फिडल बहुत साफ दिखता है! – Sathya

+1

@ सत्य धन्यवाद, मुझे उम्मीद है कि यहां लोगों को इस तरह के सवालों के जवाब देने के लिए एक उपयोगी टूल मिल जाएगा। –

संबंधित मुद्दे