oracle
文章平均质量分 85
hypgr
这个作者很懒,什么都没留下…
展开
-
奇怪的ora-01722错误
一个和子查询,视图有关的ora-01722错误子查询中的ora-01722;语句: select *from (select /*+full(b)*/(substr(a034, 1, 4)) testfrom sbjjcgc.datas bwhere reportid = 19and a001 is not null) awhere substr(a.test, 1, 4) = 2...原创 2009-06-18 10:12:03 · 142 阅读 · 0 评论 -
30个Oracle语句优化规则详解
1.选用适合的Oracle优化器Oracle的优化器共有3种:a.RULE(基于规则)b.COST(基于成本)c.CHOOSE(选择性)设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE、COST、CHOOSE、ALL_ROWS、FIRST_ROWS。你当然也在SQL句级或是会话(session)级对其进行覆盖。为了...原创 2009-06-18 10:35:36 · 79 阅读 · 0 评论 -
Oracle RBO、CBO简介
Rule Based Optimizer(RBO)基于规则Cost Based Optimizer(CBO)基于成本,或者讲统计信息ORACLE 提供了CBO、RBO两种SQL优化器。CBO在ORACLE7 引入,但在ORACLE8i 中才成熟。ORACLE 已经明确声明在ORACLE9i之后的版本中(ORACLE 10G ),RBO将不再支持。因此选择CBO 是必然的趋势。C...原创 2009-06-18 10:34:08 · 130 阅读 · 0 评论 -
索引什么时候不工作
首先要声明两个知识点: (1)RBO&CBO。 Oracle 有两种执行优化器,一种是RBO(Rule Based Optimizer)基于规则的优化器,这种优化器是基于sql语句写法选择执行路径的;另一种是CBO(Cost Based Optimizer)基于规则的优化器,这种优化器是Oracle根据统计分析信息来选择执行路径,如果表和索引没有...原创 2009-06-18 10:33:29 · 81 阅读 · 0 评论 -
Oracle的SQLPLUS命令使用集合
1. 执行一个SQL脚本文件 SQL>start file_name SQL>@ file_name 2. 对当前的输入进行编辑 SQL>edit 3. 重新运行上一次运行的sql语句 SQL>/ 4. 将显示的内容输出到指定文件 SQL> SPOOL file_name 在屏幕上的所有内容都包含在该文件中,包括你输入的sql语句。 ...原创 2009-06-18 10:29:23 · 138 阅读 · 0 评论 -
Oracle DBA在新环境下必须了解的事情
面对一个全新的环境,作为一个Oracle DBA,首先应该了解什么呢?本文将为大家具体讲解如何做一个合格的DBA。 在这里,不谈那些大的方面,比如了解整个IT环境整体情况,假设你已经知道了这些,接下来需要面对的就是这些一个个活生生的database了。这里总结了一些一般的思路来面对一个全先的database,从而快速了解你面对的环境概要。 这也不是教科,只是一些心得...原创 2009-06-18 10:28:25 · 76 阅读 · 0 评论 -
三招让Oracle表列管理更加简单
Oracle数据库是目前为止最复杂的一个数据库之一。也正是这种复杂性,让Oracle数据库能够面对企业各种各样的需求。不过大部分时候,数据库管理员掌握一些技巧,可以让数据库维护工作变得简单。 Oracle数据库是目前为止最复杂的一个数据库之一。也正是这种复杂性,让Oracle数据库能够面对企业各种各样的需求。不过大部分时候,数据库管理员掌握一些技巧,可以让数据库维护工作变得简单。...原创 2009-06-18 10:27:34 · 141 阅读 · 0 评论 -
oracle lead 使用实践
oracle 统计分析函数 lead 语法结构: lead(value_expr [,offset][,default]) over([query_partition_clause] order by Order_by_clause) 参数说明: value_expr 值表达式,通常是字段,也可是是表达式。value_expr本身不支持...原创 2009-06-18 10:26:47 · 97 阅读 · 0 评论 -
oracle count计数的优化
在9i,我们知道count(*)的时候,如果表上有pk,那count(*) 一定会走pk的。count(column) ,如果column指定not null,那count(column) 可以走上索引(通过试验证明,必须还要加上index提示才能走上索引)。但如果列上有空值,不管如何加提示,都走不上列上的索引(组合索引的非引导列除外) count是否应该走索引,主要...原创 2009-06-18 10:25:12 · 215 阅读 · 0 评论 -
Oracle HINT的常见用法
提示(hint)从Oracle7中引入,目的是弥补基于成本优化器的缺陷。提示通常用来改变SQL执行计划,提高执行效率。使用提示需要遵循的原则:1)仔细检查提示语法。尽量使用完整注释语法/*+ hint */2)使用表别名。如果在查询中指定了表别名,那么提示必须也使用表别名。例如:select /*+ index(e,dept_idx) */ * from emp e;3)不要在...原创 2009-06-18 10:23:52 · 84 阅读 · 0 评论 -
利用Oracle内置分析函数进行高效统计汇总(2)
问题5 求按登记注册类型多个层次划分的单位个数小计和总计例如要得出如下的结果:代码 登记注册类型 家数 ------ --------------------------------------- ---------100 内资企业 ...原创 2009-06-18 10:22:10 · 112 阅读 · 0 评论 -
利用Oracle内置分析函数进行高效统计汇总(1)
分析函数是Oracle从8.1.6开始引入的一个新的概念,为我们分析数据提供了一种简单高效的处理方式。在分析函数出现以前,我们必须使用自联查询,子查询或者内联视图,甚至复杂的存储过程实现的语句,现在只要一条简单的SQL语句就可以实现了,而且在执行效率方面也有相当大的提高。下面我将针对分析函数做一些具体的说明。分析函数的一般格式是函数名(参数列表) over ([partition by 字...原创 2009-06-18 10:21:12 · 151 阅读 · 0 评论 -
30个Oracle语句优化规则详解
1.选用适合的Oracle优化器Oracle的优化器共有3种:a.RULE(基于规则)b.COST(基于成本)c.CHOOSE(选择性)设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE、COST、CHOOSE、ALL_ROWS、FIRST_ROWS。你当然也在SQL句级或是会话(session)级对其进行覆盖。为了...原创 2009-06-18 10:35:40 · 80 阅读 · 0 评论