把多条竖记录变成一条横记录sql中用到了什么函数啊?能给个sql例子更好!谢谢哈

解决方案 »

  1.   

    -- 这样行吗?
    SQL> select * from idtable;        ID NAME
    ---------- --------------
            10 ab
            10 bc
            10 cd
            20 hi
            20 ij
            20 mn6 rows selected
    SQL> select id,wmsys.wm_concat(name) name from idtable
      2  group by id;        ID NAME
    ---------- ---------------------
            10 ab,bc,cd
            20 hi,ij,mn
      

  2.   

    -- 这样行吗
    SQL> select * from idtable;        ID NAME
    ---------- ----------------------
            10 ab
            10 bc
            10 cd
            20 hi
            20 ij
            20 mn6 rows selected
    SQL> select id,wmsys.wm_concat(name) name from idtable
      2  group by id;        ID NAME
    ---------- ----------------------
            10 ab,bc,cd
            20 hi,ij,mn
      

  3.   

    select * from table
    ID xh yj sqid
    -----------------------------
    1  2  好  21
    2  1  坏  21转换成
    ID  1  2  sqid
    ------------------------------------------
    1   坏  好  21
      

  4.   

    请问上面这个sql 语句怎么写哇?
      

  5.   

    -- TRY IT ..
    SQL> SELECT MIN(ID) ID,
      2         MAX(DECODE(XH,1,YJ)) "1",
      3         MAX(DECODE(XH,2,YJ)) "2",
      4         SQID
      5    FROM TABLE_NAME TT
      6   GROUP BY SQID;        ID 1    2          SQID
    ---------- ---- ---- ----------
             1 BAD  GOOD         21