请问如何将查询的一列数据拼接用逗号隔开显示成一条记录?

解决方案 »

  1.   

     CREATEDTIME    
     -------------- 
     1322049461         
     1322041123         
     1322049461        
    显示为 1322049461,1322041123 ,1322049461            
      

  2.   

    SELECT b FROM 
    (
      SELECT substr(a,LEVEL,1) b FROM 
      (
             SELECT '1,2,3,4'||',' a FROM dual
      ) CONNECT BY LEVEL<length(a)
    )WHERE b<>','--result:
    1
    2
    3
    4
      

  3.   


    WITH t AS
    (
    SELECT 1322049461 a FROM dual
    UNION ALL
    SELECT  1322041123    FROM dual
    UNION ALL
    SELECT  1322049461 FROM dual
    )
    --9i
    SELECT max(substr(sys_connect_by_path(a,','),2)) b
    FROM 
           (SELECT a,row_number() over(ORDER by a) rn FROM t)
     START WITH rn=1 CONNECT BY rn-1=PRIOR rn--10g
    select wm_concat(a,',') from t
      

  4.   

    oracle 10g 就简单了 用Wm_concat()函数。