日期:2014-05-17  浏览次数:20951 次

数据查询时,无记录显示0
select id from t_table where id in (1,2,3);
表为 
id name
1 aa
2 bb

想显示的结果为
1
2
0


------解决方案--------------------
SQL code

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

------解决方案--------------------
SQL code
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