QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4569|回复: 2
打印 上一主题 下一主题

oracle中关于null排序的问题 选择自 shaokun305 的 Blog

[复制链接]
字体大小: 正常 放大
kampoo        

85

主题

2

听众

400

积分

升级  33.33%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2005-12-29 17:44 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>oracle中关于null排序的问题</P>1 X$ x" m& h: @* C# u9 S' R, E
<>问题描述:<BR>在处理一般的数据记录中,对于数字类型的字段,在oracle的排序中,默认把null值做为<BR>大于任何数字的类型,当然对于varchar2类型的字段,默认也是该处理方式,但是客户<BR>要求排序的过程中,需要把null的字段默认排在前边(从小--&gt;大)。一般的<BR>order by xxxx,无法解决。</P>
( p8 {, j6 U- d, e! I<>问题解决:<BR>方案1:<BR>可以使用复杂的使用sql:</P>, J# j- w4 z5 c* O, {% O+ ~9 [
<>select * from <BR>(select a.*,rownum as my_sys_rownum from (<BR>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&lt;2000 </P>7 v' ?0 a* c, U: i; I2 [3 u
<>and ZBRL is null</P>+ v' f" ~( z' z
<>) a<BR>union<BR>select b.*,rownum+(select count(*) from (<BR>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&lt;2000 </P>5 p1 |1 F7 C  d; g
<>and ZBRL is null</P>
: N+ L. J7 ~1 Y8 K<>)) as my_sys_rownum from (<BR>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&lt;2000 </P>, z0 W) c$ X4 x! h; O! e. Y, G
<>and ZBRL is not null order by ZBRL <BR>) b<BR>)<BR>order by my_sys_rownum desc</P>: F& B7 a2 S. F* T4 d6 ~4 Y
<>方案2:<BR>可以利用oracle中可以对order by中对比较字段做设置的方式来实现:<BR>  如:  ……order by nvl( aaa,'-1')</P><BR>
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

0

主题

3

听众

65

积分

升级  63.16%

该用户从未签到

新人进步奖

回复

使用道具 举报

0

主题

3

听众

21

积分

升级  16.84%

该用户从未签到

新人进步奖

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-4-10 05:01 , Processed in 1.442189 second(s), 69 queries .

回顶部