oracle中rownum的使用
2012-03-06 10:45
288 查看
简单的说:oracle中同时使用rownum和order by时,要对子查询用order by,对父查询用rownum
代码示例:
<!-- 根据判重时的数据查找ins主键 使用rownum并需要排序的话,必须先用子查询进行排序-->
<select id="selectPkInsId"
parameterClass="com.sinosig.premiumServicebus.bean.Client_Message"
resultClass="java.lang.Long">
select i.pk_t_ins_id from ( select info.pk_t_ins_id from
t_se_insurance_info info where info.cont_tel = #body.CONTTEL#
<dynamic>
<!-- 是新车 -->
<isEqual prepend="" property="body.NEWVEHICLE"
compareValue="1">
<isNotEmpty prepend="and" property="body.CONTNAME">
cont_name=#body.CONTNAME#
</isNotEmpty>
</isEqual>
<!-- 非新车 -->
<isEqual prepend="" property="body.NEWVEHICLE"
compareValue="0">
<isNotEmpty prepend="and" property="body.LICENSENO">
num_plate=#body.LICENSENO#
</isNotEmpty>
</isEqual>
<isNotEqual prepend="and" property="body.agentCode"
compareValue="00000000">
substr(info.purgecode,0,2) = 'DM'
</isNotEqual>
<isEqual prepend="and" property="body.agentCode"
compareValue="00000000">
substr(info.purgecode,0,2) = 'WB'
</isEqual>
</dynamic>
order by info.pk_t_ins_id desc ) i where rownum = 1
</select>
本文出自 “编程的摩羯男” 博客,请务必保留此出处http://winters1224.blog.51cto.com/3021203/797847
代码示例:
<!-- 根据判重时的数据查找ins主键 使用rownum并需要排序的话,必须先用子查询进行排序-->
<select id="selectPkInsId"
parameterClass="com.sinosig.premiumServicebus.bean.Client_Message"
resultClass="java.lang.Long">
select i.pk_t_ins_id from ( select info.pk_t_ins_id from
t_se_insurance_info info where info.cont_tel = #body.CONTTEL#
<dynamic>
<!-- 是新车 -->
<isEqual prepend="" property="body.NEWVEHICLE"
compareValue="1">
<isNotEmpty prepend="and" property="body.CONTNAME">
cont_name=#body.CONTNAME#
</isNotEmpty>
</isEqual>
<!-- 非新车 -->
<isEqual prepend="" property="body.NEWVEHICLE"
compareValue="0">
<isNotEmpty prepend="and" property="body.LICENSENO">
num_plate=#body.LICENSENO#
</isNotEmpty>
</isEqual>
<isNotEqual prepend="and" property="body.agentCode"
compareValue="00000000">
substr(info.purgecode,0,2) = 'DM'
</isNotEqual>
<isEqual prepend="and" property="body.agentCode"
compareValue="00000000">
substr(info.purgecode,0,2) = 'WB'
</isEqual>
</dynamic>
order by info.pk_t_ins_id desc ) i where rownum = 1
</select>
本文出自 “编程的摩羯男” 博客,请务必保留此出处http://winters1224.blog.51cto.com/3021203/797847
相关文章推荐
- oracle 使用leading, use_nl, rownum调优
- Oracle的rownum原理和使用(整理几个达人的帖子)
- Oracle的rownum原理和使用
- Oracle中ROWNUM的使用技巧
- Oracle的rownum原理和使用
- Oracle 使用ROWNUM分页时的排序问题
- oracle rownum 及分页处理的使用方法
- Oracle中rownum的使用
- ORACLE——ROWNUM解析(使用ROWNUM大于条件,无法得到任何查询结果)
- 解决oracle使用rownum排序分页排序字段不唯一导致分页错误
- oracle分页显示方法 rownum的使用
- oracle中rownum与rowid使用方法
- 菜鸟上路之oracle中rowid和rownum的使用 笔记整理
- oracle使用rownum进行分页语句详解
- Oracle的rownum原理和使用(整理几个达人的帖子)
- 【Oracle】oracle中rownum的说明及使用技巧
- Oracle的rownum原理和使用
- Oracle的rownum原理和使用
- Oracle中的rownum不能使用大于>的问题
- Oracle的rownum原理和使用(整理几个达人的帖子)(转载)