【问题标题】:Select query result in single row comma separated format以单行逗号分隔格式选择查询结果
【发布时间】:2012-02-28 13:30:09
【问题描述】:

我有一个表格和值,如下例所示,当我选择时,我需要以逗号分隔的单行显示结果。

Table1.new_field 价值1 价值2 价值3

我需要选择查询的结果如下。

值1,值2,值3...

我检查了 wm_concat 之类的函数,但没有运气。我正在使用oracle 10g。请建议如何实现这一目标。

TIA。

【问题讨论】:

    标签: sql select oracle10g


    【解决方案1】:

    我想你想在 MySQL 中使用 GROUP_CONCAT 函数。但不幸的是,oracle 中没有内置函数。

    您可能想查看这篇文章:GROUP_CONCAT in Oracle 10gthis one

    with data
     as
     (
      select job,
        ename,
        row_number() over (partition by job order by ename) rn,
        count(*) over (partition by job) cnt
      from emp
     )
     select job, ltrim(sys_connect_by_path(ename,','),',') scbp
      from data
      where rn = cnt
      start with rn = 1
      connect by prior job = job and prior rn = rn-1
      order by job
    /
    
    JOB       SCBP
    --------- ----------------------------------------
    ANALYST   FORD,SCOTT
    CLERK     ADAMS,JAMES,MILLER,SMITH
    MANAGER   BLAKE,CLARK,JONES
    PRESIDENT KING
    SALESMAN  ALLEN,MARTIN,TURNER,WARD
    

    【讨论】:

      猜你喜欢
      • 2019-03-17
      • 2016-04-02
      • 2014-04-22
      • 1970-01-01
      • 1970-01-01
      • 2018-10-05
      • 2018-03-09
      • 1970-01-01
      相关资源
      最近更新 更多