在Oracle中将SQL行转换为逗号分隔值

Ian*_*the 8 sql oracle

可能重复:
如何将多行组合到Oracle中以逗号分隔的列表中?

如何在不创建函数的情况下从SQL中的返回行列表生成逗号分隔值?需要删除重复项并使用null或使用"无"作为值.

例: select name from student;

结果 :

         NAME         
        ------
        Zed
        Charlo
        None
        Charlo
        Dionn
        Ansay
Run Code Online (Sandbox Code Playgroud)

期望的输出:

              Name
             -------
             Zed,Charlo,Dionn,Ansay
Run Code Online (Sandbox Code Playgroud)

Jak*_*sel 21

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

select 
  listagg(name, ',') 
    within group (order by id) as list 
from student
Run Code Online (Sandbox Code Playgroud)

  • 完全披露:sqlfiddle.com是我的网站. (4认同)
  • @Sathya 谢谢,我希望这里的人们发现它是回答此类问题的有用工具。 (2认同)