ºìÁªLinuxÃÅ»§
Linux°ïÖú

oracleÊý¾Ý¿âÖйØÓÚnullÅÅÐòµÄÎÊÌâ

·¢²¼Ê±¼ä:2006-09-09 00:01:57À´Ô´:ºìÁª×÷Õß:chxuemei
ÎÊÌâÃèÊö£º

ÔÚ´¦ÀíÒ»°ãµÄÊý¾Ý¼Ç¼ÖУ¬¶ÔÓÚÊý×ÖÀàÐ͵Ä×ֶΣ¬ÔÚoracleµÄÅÅÐòÖУ¬Ä¬ÈÏ°ÑnullÖµ×öΪ´óÓÚÈκÎÊý×ÖµÄÀàÐÍ£¬µ±È»¶ÔÓÚvarchar2ÀàÐ͵Ä×ֶΣ¬Ä¬ÈÏÒ²ÊǸô¦Àí·½Ê½£¬µ«ÊÇ¿Í»§ÒªÇóÅÅÐòµÄ¹ý³ÌÖУ¬ÐèÒª°ÑnullµÄ×Ö¶ÎĬÈÏÅÅÔÚÇ°±ß£¨´ÓС£­£­>´ó£©¡£Ò»°ãµÄ
order by xxxx£¬ÎÞ·¨½â¾ö¡£

ÎÊÌâ½â¾ö£º

¿ÉÒÔʹÓø´ÔÓµÄʹÓÃsql£º

[code]select * from
(select a.*,rownum as my_sys_rownum from (
select deptid,nvl(BDZNAME,' '),nvl(VOLLEVEL,'0'),ZBRL,nvl(ZBTS, '0'),
nvl(FZR,'0'),nvl(DEPTIDDES,' '),nvl(TEL,' '),nvl(RUNSTATEDES,' '),
nvl(ADDRESS,' '),BDZID from V_BDZ where rownum<2000
and ZBRL is null
) a
union
select b.*,rownum+(select count(*) from (
select deptid,nvl(BDZNAME,' '),nvl(VOLLEVEL,'0'),ZBRL,nvl(ZBTS, '0'),
nvl(FZR,'0'),nvl(DEPTIDDES,' '),nvl(TEL,' '),nvl(RUNSTATEDES,' '),
nvl(ADDRESS,' '),BDZID from V_BDZ where rownum<2000
and ZBRL is null
)) as my_sys_rownum from (
select deptid,nvl(BDZNAME,' '),nvl(VOLLEVEL,'0'),ZBRL,
nvl(ZBTS, '0'),nvl(FZR,'0'),
nvl(DEPTIDDES,' '),nvl(TEL,' '),nvl(RUNSTATEDES,' '),
nvl(ADDRESS,' '),BDZID from V_BDZ where rownum<2000
and ZBRL is not null order by ZBRL
) b
)
order by my_sys_rownum desc[/code]
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ