oracle按时间查询翻页时出现与前面一页重复数据
用hibernate查询分页时,翻页显示中有少量记录是重复的。已经确认sql写法没错误。
select savebillin0_.*,entityacct2_.*
from save_bill_info savebillin0_,
CUST_INFO custinfo1_,
entity_acct_bill entityacct2_
where savebillin0_.cust_id = custinfo1_.ID
and entityacct2_.ACCOUT_ID =
(select max(entityacct3_.ACCOUT_ID)
from entity_acct_bill entityacct3_
where entityacct3_.SAVEBILL_ID = savebillin0_.SAVEBILL_ID)
and savebillin0_.OPER_STATUS <> 'BPP00'
and savebillin0_.ADSCRIPTION_ID = '00010015'
order by entityacct2_.OPER_DATE desc
经过发现当oper_date这个字段为同一天时,导致翻页出现少量重复数据,加入,savebillin0_.savebill_id desc 唯一性字段的排序后可以解决,可能跟oracle内部排序细节有关系。
相关文档:
表中要更新的数据,必须要通过和另一个表来关联才能确定要更新的条目,mssql可以直接用 from t1.id=t2.id 来更新,而Oracle则报错
最后google到这样,直接将关联后的表作为一个表来更新。。。。
update (select * from us_cm_cat_petrol_gun g
left join us_cm_ci c on g.machine_sn ......
oracle的导入导出命令直接用cmd就可以完成,导出的文件地址就是cmd的地址,cmd的原始地址可以改,运行cd ..退回到上级目录 cd空格加目录名 是到下级目录 输入D:回车就可以直接到d盘
exp 用户名/密码@数据库名 file=需要保存的文件.dmp tables=(A表,B表....) log=日志.log
exp jjeto_eim_user/jjetoeimuser@EIM ......
Oracle层次查询和分析函数在号段选取中的应用
摘要
一组连续的数,去掉中间一些数,如何求出剩下的数的区间(即号段)?知道号段的起止,如何求出该号段内所有的数?知道一个大的号段范围和已经取过的号段,如何求出可用的号段?利用Oracle提供的强大的查询功能以及分析函数,我们可以很轻松的解决上述问题。
关键词:
......
《oracle,db2,mysql类比》作为三种数据库一个类比,目的在于通过类比,了解现在数据库相似点与异同点,同时可以帮助大家在了解一种数据库,能够迅速地学会其他数据库。初步定义为oracle,db2,mysql三种数据库,以后可能还是追加informix,sysbase,sql server等数据库。
本篇作为首篇,目的是让大家对这三种数据库常用的知� ......
1. select * from emp;
2. select empno, ename, job from emp;
3. select empno 编号, ename 姓名, job 工作 from emp;
4. select job from emp;
5. select distinct job from emp;
6. select distinct empno, job from emp;
说明:因为雇员编号不重复, 所以此时证明所有的列没有重复,所以不能消 ......