where rownum 10条件的疑问疑问:为什么加条件后的结果不是1上面图中的前面10条呢,然后2图中得出的结果是
where rownum <= 10条件的疑问
查询结果为:<br />[img=http://img.my.csdn.net/uploads/201211/13/1352796898_2365.jpg)
疑问:为什么加条件后的结果不是1上面图中的前面10条呢,然后2图中得出的结果是按照什么逻辑得出的
[解决办法]
select * from (select rownum rr,row_.*, rownum jres_db_rownum_ from (select sa.ADJUST_ID, sa.STAFF_CODE, -- sa.SERIAL_NO, sa.CURR_DT, -- sa.DEAL_TM, sa.SALARY_SUBJECT, sa.OCCUR_BALANCE, sa.BRANCH_NO, sa.TEAM_NO, sa.OP_ACCOUNT, sa.REMARK, sa.audit_status from sly_adjustfarerecord sa where 1 = 1 order by audit_status, curr_dt desc, branch_no) row_ ) bb where bb.rr<11
[解决办法]
怎么那么多rownum
[解决办法]
扔掉一个rownum
[解决办法]
你的 where rownum <= 10 是写在哪呢?你不完整写出来,谁知道你写的语句是怎样的,坐等有啥用
[解决办法]
太多了,不好区分
[解决办法]
rownum写在里面那个查询里,外面就不要了。
[解决办法]
请参考 http://hi.baidu.com/elfinalice/item/be6aed3321ce42c42e8ec2c5 网址的 (4)rownum和排序 章节,原理:Oracle中的rownum的是在取数据的时候产生的序号,所以想对指定排序的数据去指定的rowmun行数据就必须注意。
[解决办法]
可以用row_number()分析函数
[解决办法]
兄弟看样你没理解 rownum的含义啊。 你的条件语句是不是加在 where 1=1 那了,你有order by
如果你把你把你的语句括号上作为表查询 在外边写上 条件语句 就应该显示那个前10条了。
可能我写的不够清楚,你去看看rownum的相关资料,再自己写几个语句试试不同的效果。
