select decode(a.col2,null,b.col3,a.col2)
from table1 a,table2 b
where a.col1=b.col1

解决方案 »

  1.   

    select decode(a.col2,null,b.col3,a.col2)
    from table1 a,table2 b
    where a.col1=b.col1
    正解!
      

  2.   

    都是正解
    yaozw_mountain(山林) 更简单。
    判断null,没必要用decode,nvl足矣!
      

  3.   

    如果TABLE2表的col1唯一且table1中的每个col1值在table2中都有记录,即table1的col1与table2的col1值是1对1的,那么上面的写法成立,否则有问题。
      

  4.   

    select nvl(a.col2,b.col3)
    from table1 a,table2 b
    where a.col1=b.col1
      

  5.   

    TABLE1.COL2,如果为空,就用TABLE2.COL3的值取代
    table2.col3也许会有很多。
      

  6.   

    sxiong() ( ) 信誉:100    Blog  2006-11-13 17:06:55  得分: 0  
     
     
       select nvl(a.col2,b.col3)
    from table1 a,table2 b
    where a.col1=b.col1
      
    较好
     
      

  7.   

    我也喜欢: sxiong() ( ) 信誉:100    Blog  这么写。