

以下的文章主要讲述的是Oracle数据库和DB2、MySQL取前10条记录的实际对比,以下的文章主要以Oralce为示例来讲解它们的不同,以下就是文章的详细内容介绍,希望大家能有所收获。
1. ***选择:利用分析函数
比如想取出100-150条记录,按照tname排序
2. 使用rownum 虚
注释:使用序列时不能基于整个记录集合来进行排序,假如指定了order by子句,排序的的是选出来的记录集的排序。
(1)Oracle数据库与DB2、MySQL取前10条记录的对比要取前10条不同id记录,假如***1条记录的ID依然有相同的,那么取出来。
(2)取前10条记录,假如第10条记录的ID 还有相同的,那么取出来。

(3)取前10条记录
文章出自:
【编辑推荐】
SQL语言是不是每个数据库都通用的
SQL,即Structured Query Language,是现在主流数据库如SQLServer,Oracle,DB2,MySQL等的主流查询语言,SQL是这些数据库查询语句的最小集合,每一种数据库的查询语言各有自已的不同之处。 如查一个表的前十条数据,Oracle用select top 10 from table,而MySQL用select * from table limit 0,10。
oracle的分页处理,oracle中针对一个一千条记录的表如果要查200到300的记录怎么查
Oracle有3种分页处理语句1、根据ROWID分页2、按分析函数分页3、按rownum分页其中1的效率最高,2的效率最低,3的效率比2好很多,比1的差距也很小,是经常使用的分页处理语句;3的语句有固定的格式,基本有以下步骤构成a、查询原表,从原表中取出分页中需要的字段,并排序select ename ,sal from emp order by salb、对a取到的内容进行rownum编号select a1.*,rownum rn from (select ename ,sal from emp order by sal) a1 c、添加分页结束行号select a1.*,rownum rn from (select ename ,sal from emp order by sal) a1whererownum<=300d、添加分页开始行号select a2.* from (select a1.*,rownum rn from (select ename ,sal from emp order by sal) a1whererownum<=300) a2 where rn>=200d中的语句可以用作rownum分页的模板使用,使用时修改select ename ,sal from emp order by sal,开始行号,结束行号就可以了。
DB2与oracle有什么区别?
1、体系结构,DB2的实例和数据库分开的做法,我个人还是比较喜欢的,因为实例可以创建多个,数据库的恢复直接恢复到实例下就可以了,相对ORACLE简单多了。 2、管理工具,DB2的管理工具做得太简陋了,控制中心只能说能用而已,而且还有好多bug,不如ORACLE的企业管理器做得好,连WEB版都没有。 3、备份管理,DB2的备份只能说是简陋了,没有备份集的管理功能,没有恢复预览和校验功能,不能写到网络驱动器上,唉太多的没有了,ORACLE的RMAN确实强大; 4、DB2的命令执行方式,我很喜欢,可以在命令行上执行SQL,也可以在命令窗口上执行SQL,相对SQLPLUS灵活多了; 5、DB2的自动维护功能做的很好,可以定期自动整理数据库碎片和重建索引,唯一不大理想的是自动维护的备份功能不能指定压缩备份,相对而言ORACLE的自动维护功能就很一般了; 6、DB2的运行状况的功能我也很喜欢,ORACLE也有类似的AHM,但是 DB2的运行状况更为直接,可以一下就看出数据库目前有啥问题,DB2还给出了如何处理的建议顾问程序; 7、DB2的内存状况监控功能本来我也很喜欢,可以直接在内存状况监控上直接改相应的参数,但是发现一个巨大BUG后,我就很不喜欢了,如果你一直点刷新,发现内存占用量会不断上升,我有次为了监控一个内存参数,让这个工具运行了一天一夜,结果回来一看,晕倒,所有的内存参数增长到数百G,我想看的历史变化情况居然没有。 8、DB2的远程网络连接采用的编目方式描述连接串的方式我感觉很不爽,为了改个客户端的连接服务器的IP地址,所有的客户端都需要将编目删除,然后重新编目连接地址,晕倒100多台PC机搞下来,尽管可以使用脚本,但是还是把人都快搞疯了。 ORACLE采用的用文件来配置远程服务器的方式,所有的PC机都通过更新服务器直接更新本机的TNSNAME,1分钟搞定。 9、DB2的数据库创建如果要手工管理容器,居然没有指定缺省的系统表空间数据文件名,你要创建一堆相应的文件名,没办法,只好照抄oracle的OFA体系结构的文件名。 10、DB2的连接配置图形工具实在是差了,在上面配置一步步配出的连接居然不能用!只好使用脚本,这点ORACLE比DB2强多了。 11、DB2在WINDOWS 平台的可靠性不怎么样,3个多星期无缘无故DOWN了4次机,ORACLE配好了应该没有这么悲惨吧。 12、DB2的锁自动管理机制,我比较喜欢,打开后,互锁的概率大大降低,相同的程序,在DB2下锁明显少许多,但是不爽的是DB2的select命令也是加锁的。 13、DB2 9.7的ORACLE兼容模式,我也很喜欢,迁移麻烦少了许多许多。 14、DEB2 的自动内存管理我看要比ORACLE 要强一些,几乎所有的内存参数都能自动管理,ORACLE11G貌似也可以全部自动管理了。 15、DB2的导出数据的工具实在太简陋了,连oracle的EXP/IMP 都不如,更不要说expdp/impdp 16、DB2的SQL语句运行速度明显快于ORACLE,5-6段相同的代码,同一台机器,参数都是缺省参数,个人测试DB2执行速度大约要快10%-15%,也许和DB2缺省的参数调优有关,ORACLE10g调优后,还是还有5-10%左右的差异。
发表评论