select id from t_table where id in (1,2,3);
表为 
id name
1 aa
2 bb想显示的结果为
1
2
0

解决方案 »

  1.   


    select aa.rn,nvl(bb.id,0) as id from 
    (select rn   from 
       (select rownum as rn from dual connect by rownum<=9) a 
      where a.rn in(1,2,3)
     ) aa left join t_table bb on aa.rn=bb.id
      

  2.   

    select nvl(t.id,0) from 
    (select rownum as rn from t connect by rownum<=2) a left join t on t.id=a.rn
      

  3.   

    select id from t_table where id in (1,2,3)
    union all
    select 0