求助:如何将图片中的数据合并成如下
23 10 2013-1-8 11:01:07 2013-1-8 11:01:08 20 2013-1-8 11:01:17 2013-1-8 11:04:12 30 2013-1-8 11:04:29 2013-1-8 11:06:09

解决方案 »

  1.   

    使用||运算符 + WMSYS.WM_CONCAT()函数就可以解决,例如:
    SELECT TOBJ_KEY,REPLACE(WMSYS.WM_CONCAT(M),',',' ')
    (
    SELECT TOBJ_KEY,
           ROUTE_STEP_NAME||' '||
           START_TIME||' '||
           COMPLETE_TIME AS M
    FROM XXX
    )O
    GROUP BY O.TOBJ_KEY
      

  2.   

    基本就是这样,估计你时间比较忙没把sql写全create materialized view MV_ODS_STEP refresh force on demand next SYSDATE+1/4 as 
    select o.serial_number,o.tobj_key,wmsys.wm_concat(m) as ods_step,o.planned_line,o.part_number 
    from(
    select p.serial_number,p.tobj_key,
           p.route_step_name||'+'||
           to_char(p.start_time,'yyyy-mm-dd hh24:mi:ss')||'+'||
           to_char(p.complete_time,'yyyy-mm-dd hh24:mi:ss') as m,
           p.planned_line,p.part_number
          from
    (
    select m.serial_number,n.tobj_key,n.route_step_name,n.start_time,n.complete_time,t.planned_line,t.part_number 
    from work_order_items t,unit m,tracked_object_history n where m.order_item_key = t.order_item_key and m.unit_key = n.tobj_key
    order by n.route_step_name
    )p
    )o 
    group by (o.serial_number,o.tobj_key,o.planned_line,o.part_number)包含物化的代码,中间用+隔开,这样在程序中就可以分隔开来。