Oracle中索引类型与是否有类似SQL Server的Option (fast N)语句

ChinaITOldMan 2017-12-28 12:54:31
1. Oracle中是否有类似SQL Server 中的Option (fast N)语句
2. Oracele中各种索引,请哪种索引的效率高,哪种索引的效率低,麻烦一一讲解下。谢谢!
...全文
380 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
ChinaITOldMan 2017-12-29
  • 打赏
  • 举报
回复
引用 7 楼 wmxcn2000 的回复:
[quote=引用 5 楼 mcxhh2005的回复:][quote=引用 3 楼 wmxcn2000 的回复:] 第一问题,百度一下 oracle hint first_rows 第二问题,用什么样的索引,要结合你的业务场景,你可以描述一下具体的业务需要。
您好,我以前主要是搞SQL Server的,也用过MySQL,现在刚开始学习Oracle,对Oracle的索引类型不了解;因为在SQL Server或MySQL的中基本可以通过索引的类型判断一下SQL Server的执行计划,所以想了解下Oracle有哪些索引,哪些索引的效率相对比较高。谢谢[/quote] 索引的类型吗? b*tree,bitmap,iot表。 第一个用的最多,最后一个用的最少。[/quote] 谢谢您,假如在看执行计划时,有没有说B*tree索引通常比其他索引好呢? 在SQL Server中看执行计划有Clustered index seek、Index seek、 Index scan等,一般来说用到Clustered index seek查找比Index seek好,而Index seek又比 Index scan好?Oracle是否有这样的说法呢?
卖水果的net 2017-12-29
  • 打赏
  • 举报
回复
引用 5 楼 mcxhh2005的回复:
[quote=引用 3 楼 wmxcn2000 的回复:] 第一问题,百度一下 oracle hint first_rows 第二问题,用什么样的索引,要结合你的业务场景,你可以描述一下具体的业务需要。
您好,我以前主要是搞SQL Server的,也用过MySQL,现在刚开始学习Oracle,对Oracle的索引类型不了解;因为在SQL Server或MySQL的中基本可以通过索引的类型判断一下SQL Server的执行计划,所以想了解下Oracle有哪些索引,哪些索引的效率相对比较高。谢谢[/quote] 索引的类型吗? b*tree,bitmap,iot表。 第一个用的最多,最后一个用的最少。
ChinaITOldMan 2017-12-29
  • 打赏
  • 举报
回复
引用 4 楼 sxq129601 的回复:
first_rows(TAB,N)
谢谢您的指点!
ChinaITOldMan 2017-12-29
  • 打赏
  • 举报
回复
引用 3 楼 wmxcn2000 的回复:
第一问题,百度一下 oracle hint first_rows 第二问题,用什么样的索引,要结合你的业务场景,你可以描述一下具体的业务需要。
您好,我以前主要是搞SQL Server的,也用过MySQL,现在刚开始学习Oracle,对Oracle的索引类型不了解;因为在SQL Server或MySQL的中基本可以通过索引的类型判断一下SQL Server的执行计划,所以想了解下Oracle有哪些索引,哪些索引的效率相对比较高。谢谢
ChinaITOldMan 2017-12-29
  • 打赏
  • 举报
回复
谢谢各位的指点!
sxq129601 2017-12-29
  • 打赏
  • 举报
回复
first_rows(TAB,N)
卖水果的net 2017-12-29
  • 打赏
  • 举报
回复
第一问题,百度一下 oracle hint first_rows 第二问题,用什么样的索引,要结合你的业务场景,你可以描述一下具体的业务需要。
minsic78 2017-12-29
  • 打赏
  • 举报
回复
索引扫描方式补充两个: index full scan、index fast full scan,在很多场合下都可以被用来优化SQL,尤其是前者,与前面说的first_rows这个东东有时候可能有关系: first_rows是个提示,也是一种优化器的行为比较高层次的指导方式(参数optimize_mode来指定),另外一种是all_rows——这个是现在CBO优化器的默认方式,意味着Oracle会考虑在返回所有数据的情况下来选择SQL的执行计划,通常这也是更合理的取值,first_rows意味着指示CBO更快返回几行数据,通常见于分页,这就不得不提到前面说过的INDEX FULL SCAN这种索引扫描方式,在被优化的带有order by的分页SQL中,你会发现大量基于order by字段的INDEX FULL SCAN,当然在分页中,这个“索引全扫描”并不没有完全完成,因为分页不需要返回所有数据。 另外,慎用first_rows,因为它对CBO的影响太大,很可能给你生成不合理的执行计划。
ChinaITOldMan 2017-12-29
  • 打赏
  • 举报
回复
谢谢楼上支持, 请哪位大虾能否指点下,谢谢!
卖水果的net 2017-12-29
  • 打赏
  • 举报
回复
引用 10 楼 mcxhh2005 的回复:
是的,我上面没说清楚,应该是是如下: 1. Oracle的索引类型 2.Oracle的索引扫描方式,那个扫描方式效率最好,各扫描方式的效率怎样? 谢谢!
unique > range > skip 大概这样子,你参考一下。
ChinaITOldMan 2017-12-29
  • 打赏
  • 举报
回复
引用 9 楼 wmxcn2000 的回复:
oracle 中没有 Clustered index 。 你刚才所说的这些,是索引的扫描方式,oracle 都有的,只是名称上略有差别。 另外还有一个 index scan skip ,跳跃扫描。
是的,我上面没说清楚,应该是是如下: 1. Oracle的索引类型 2.Oracle的索引扫描方式,那个扫描方式效率最好,各扫描方式的效率怎样? 谢谢!
卖水果的net 2017-12-29
  • 打赏
  • 举报
回复
oracle 中没有 Clustered index 。 你刚才所说的这些,是索引的扫描方式,oracle 都有的,只是名称上略有差别。 另外还有一个 index scan skip ,跳跃扫描。
碧水幽幽泉 2017-12-28
  • 打赏
  • 举报
回复
路过,帮顶一下。
第一篇 Oracle管理配置 第1章 Oracle安装配置(教学视频:10分钟) 23 1.1 Oracle简介 23 1.1.1 数据库术语 23 1.1.2 主流数据库简介 24 1.1.3 Oracle数据库的特点 24 1.2 安装Oracle数据库 25 1.2.1 Oracle数据库的版本变迁及安装环境 25 1.2.2 安装过程 26 1.2.3 安装需要注意的问题 27 1.3 本章小结 28 1.4 习题 28 第2章 Oracle常用工具(教学视频:7分钟) 29 2.1 Net Configuration Assistant(网络配置助手) 29 2.1.1 监听程序配置 29 2.1.2 命名方法配置 31 2.1.3 本地Net服务名配置 32 2.2 Net Manager(网络管理员) 34 2.3 本章实例 36 2.4 本章小结 38 2.5 习题 38 第3章 SQL Plus和PL/SQL(教学视频:11分钟) 39 3.1 SQL Plus与PL/SQL简介 39 3.2 使用SQL Plus 40 3.2.1 登录SQL Plus 40 3.2.2 SQL Plus输出结果的格式化 41 3.2.3 SQL Plus小结 46 3.3 PL/SQL 46 3.3.1 PL/SQL常用开发工具 46 3.3.2 开发一个简单的PL/SQL程序 48 3.4 本章实例 49 3.5 本章小结 50 3.6 习题 50 第二篇 Oracle数据库对象 第4章 Oralce数据库(教学视频:15分钟) 51 4.1 创建Oracle数据库 51 4.2 Oracle数据库的相关术语 52 4.2.1 数据库 53 4.2.2 数据库实例和SID 53 4.2.3 ORACLE_SID 54 4.3 Oracle数据库的备份与恢复 55 4.3.1 逻辑备份/恢复(导出/导入) 55 4.3.2 物理备份/恢复 56 4.3.3 利用PL/SQL Developer备份数据库 60 4.4 本章实例 61 4.5 本章小结 61 4.6 习题 62 第5章 Oracle数据表对象(教学视频:42分钟) 63 5.1 Oracle表空间 63 5.1.1 Oracle表空间简介 63 5.1.2 创建Oracle表空间 64 5.1.3 查看表空间 66 5.1.4 修改数据库默认表空间 67 5.1.5 修改表空间名称 68 5.1.6 删除表空间 69 5.2 创建Oracle数据表 70 5.2.1 利用工具创建数据表 70 5.2.2 利用工具查看数据表 71 5.2.3 利用命令创建数据表 72 5.2.4 利用命令查看表结构 72 5.3 修改Oracle数据表结构 73 5.3.1 利用工具修改数据表结构 73 5.3.2 利用命令修改数据表结构 74 5.4 删除数据表 75 5.4.1 利用工具删除数据表 76 5.4.2 利用SQL语句删除数据表 76 5.5 备份/恢复数据表 76 5.5.1 利用工具备份/恢复数据表 77 5.5.2 利用命令备份/恢复数据表 82 5.6 临时表 83 5.6.1 临时表简介 83 5.6.2 会话级临时表 84 5.6.3 事务级临时表 85 5.6.4 查看临时表在数据库的信息 86 5.6.5 临时表的应用场景 86 5.7 特殊的表dual 87 5.7.1 分析dual表 87 5.7.2 dual表的应用场景 87 5.7.3 修改dual表对查询结果的影响 88 5.8 本章实例 89 5.9 本章小结 90 5.10 习题 90 第6章 约束(教学视频:43分钟) 91 6.1 主键约束 91 6.1.1 主键简介 91 6.1.2 创建主键约束 92 6.1.3 修改表的主键约束 94 6.1.4 主键应用场景 96 6.2 外键约束 97 6.2.1 外键简介 97 6.2.2 创建外键约束 97 6.2.3 级联更新与级联删除 100 6.2.4 修改外键属性 102 6.2.5 外键使用 104 6.3 唯一性约束 105 6.3.1 唯一性约束简介 105 6.3.2 创建唯一性约束 105 6.3.3 修改唯一性约束 107 6.3.4 唯一性约束的使用 108 6.4 检查约束 108 6.4.1 检查约束简介 108 6.4.2 创建检查约束 108 6.4.3 修改检查约束 110 6.4.4 检查约束的使用 111 6.5 默认值约束 111 6.5.1 默认值约束简介 112 6.5.2 创建默认值约束 112 6.5.3 修改默认值约束 113 6.6 本章实例 115 6.7 本章小结 116 6.8 习题 116 第7章 视图(教学视频:50分钟) 117 7.1 关系视图 117 7.1.1 建立关系视图 117 7.1.2 修改/删除视图 118 7.1.3 联接视图 120 7.1.4 编译视图 122 7.1.5 使用force选项强制创建视图 124 7.1.6 利用视图更新数据表 125 7.1.7 with check option选项 126 7.1.8 关系视图小结 128 7.2 内嵌视图 128 7.2.1 内嵌视图简介 128 7.2.2 内嵌视图的使用 128 7.2.3 内嵌视图小结 130 7.3 对象视图 131 7.3.1 对象视图简介 131 7.3.2 对象视图简介 131 7.4 物化视图 133 7.4.1 物化视图简介 133 7.4.2 物化视图的使用 133 7.4.3 物化视图的数据加载 135 7.4.4 物化视图的数据更新 135 7.4.5 查询重写 136 7.5 本章小结 136 7.6 本章实例 137 7.7 习题 137 第8章 函数与存储过程(教学视频:48分钟) 138 8.1 函数 138 8.1.1 函数简介 138 8.1.2 创建函数 139 8.1.3 函数的括号 140 8.1.4 函数的参数 141 8.1.5 函数的确定性 142 8.1.6 典型函数举例 143 8.2 存储过程 144 8.2.1 存储过程简介 144 8.2.2 创建存储过程 144 8.2.3 存储过程的参数——IN参数 146 8.2.4 存储过程的参数——OUT参数 147 8.2.5 存储过程的参数——IN OUT参数 149 8.2.6 存储过程的参数——参数顺序 149 8.2.7 存储过程的参数——参数的默认值 152 8.2.8 存储过程的参数——参数顺序总结 153 8.3 程序包 153 8.3.1 规范 153 8.3.2 主体 155 8.3.3 调用程序包的函数/存储过程 157 8.3.4 程序包的变量 158 8.4 本章实例 159 8.5 本章小结 161 8.6 习题 161 …… 第9章 游标(教学视频:36分钟) 162 第10章 触发器(教学视频:58分钟) 178 第11章 序列(教学视频:28分钟) 206 第12章 用户角色与权限控制(教学视频:45分钟) 215 第三篇 OracleSQL 第13章 Oracle数据类型(教学视频:21分钟) 231 第14章 Oracle的函数与表达式(教学视频:111分钟) 240 第15章 Oracle的控制语句(教学视频:16分钟) 282 第16章 SQL查询(教学视频:55分钟) 290 第17章 SQL更新数据(教学视频:34分钟) 319 第四篇 Oracle编程高级应用 第18章 数据库速度优化与数据完整性(教学视频:32分钟) 332 第19章 数据一致性与事务管理(教学视频:46分钟) 341 第20章 并发控制(教学视频:35分钟) 356 第21章 Oracle的正则表达式(教学视频:29分钟) 369 第五篇 Oracle与编程语言综合使用实例 第22章 Oracle在Java开发的应用(教学视频:38分钟) 376 第23章 Oracle在C#开发的应用(教学视频:12分钟) 391

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧