我现在做个报表的系统,碰到一张报表要从5个表取数据,其中一个表为主表,其他的为副表,我想写一个view方便查询,假设A表是主表,B表是副表
Create table A(
  a varchar(2),
  b varchar(2)
)Create table B(
  id number(10),
  time date,
  c number(2,0),
  d number(2,0)
)现在我的view要4个字段(a,b,c1,c2),当d为1时,c1 = c,当d为2时,c2=c
可能表述得不是很清楚,请高手帮帮忙

解决方案 »

  1.   

    4个字段(a,b,c1,c2),当d为1时,c1 = c,当d为2时,c2=c
    ?
      

  2.   

    INSERT INTO A(C1,C2)
    SELECT 
    (DECODE(B.D, 1, C, NULL)
    DECODE(B.D, 2, C, NULL))
    FROM B楼主不会插入c1,c2对不?用上面的方法。
      

  3.   

    用case when表达式
    d为1时,c1 = c,当d为2时,c2=c
    select case d=1 then c else '' end c1,case d=2 then c else '' end c2 from table
    试试吧
      

  4.   

    select a,b,decode(d,1,c,"") c1,decode(d,2,c,"") c2
    from ...