如何处理ORACLE全局索引问题 5C

图片说明

如何将global stats改为yes,user_indexes oracle原生视图

5个回答

全局索引是针对分区表的,你先确认表是不是分区表,

select to_char(submittime,'yyyy/mm/dd') coltime,round(avg(yszs),2) avg_yszs,round(avg(speed),2) avg_speed from (select submittime,yszs,speed from GDYDSJ_HISTORY_JWD where linkid='5904799666507688178' and yszs is not null and submittime between to_date('2017/03/03 00:00:00','yyyy/mm/dd hh24:mi:ss') and to_date('2017/03/10 00:00:00','yyyy/mm/dd hh24:mi:ss') ) t group by to_char(submittime,'yyyy/mm/dd') order by coltime

qq_35583881
bug创造者 什么意思,能解释解释吗
大约一年之前 回复

图中的信息不多,不知道你讲的是什么问题,全局索引是那个字段?

qq_35583881
bug创造者 我是自己随意建立为一个A表,给A表的某个字段创建索引,创建完发现不起作用,通过oracle的视图查询,我想把截图的字段变为yes
大约一年之前 回复

select to_char(submittime,'yyyy/mm/dd') coltime,round(avg(yszs),2) avg_yszs,round(avg(speed),2) avg_speed from (select submittime,yszs,speed from GDYDSJ_HISTORY_JWD where linkid='5904799666507688178' and yszs is not null and submittime between to_date('2017/03/03 00:00:00','yyyy/mm/dd hh24:mi:ss') and to_date('2017/03/10 00:00:00','yyyy/mm/dd hh24:mi:ss') ) t group by to_char(submittime,'yyyy/mm/dd') order by coltime

qq_35583881
bug创造者 没看懂,能不能认真回复一下
大约一年之前 回复

分区表索引列里那个本地索引 就是全局的 在小方框里打勾就行了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Oracle本地索引与全局索引
http://blog.itpub.net/29478450/viewspace-1417473/ Oracle本地索引与全局索引 原创Oracle作者:luoleiAaron时间:2015-01-27 21:55:5874590 内容整理来自网络 分区索引分为本地索引(local index)和全局索引(global index)。 对于local索引,每一个表分区对应...
oracle的全局索引(global)和本地索引(local)
全局索引和表是否为分区表、分区键值没有直接关系。也就是说,可以在非分区表上建立分区索引,在分区表上建立非分区索引。但是,如果建立分区索引,那么分区键必须和索引键相同。建立测试表:create table test( id int, name varchar2(20)) partition by range(id)( partition p1 values less than (10),  part...
【Oracle】关于局部索引和全局索引的测试
前言Oracle数据库中(1)对于Oracle分区表,存在两种分区:局部索引和全局索引 (2)表分区和索引分区是两个不同的概念 (3)局部索引,也称本地索引(Local索引),其分区形式与表的分区完全相同,依赖列相同,存储属性也相同。以下是实际应用中碰到的一个问题,特写此篇文章以供探讨目前表结构如下:-- Create table create table GDYDSJ_HISTORY_JWD (
Oracle性能优化2- 依据场景选择技术
1.索引的坏处   索引可以加快查询xiao
oracle全局索引没有用到
1、表结构rn[code=sql]CREATE TABLE OPENAPI.TD_REPORT_ORDER_CHANNEL_DATArn(rn LOGDATE VARCHAR2(10 BYTE),rn LOGMONTH VARCHAR2(8 BYTE),rn SPCHID VARCHAR2(20 BYTE),rn PRODUCTID VARCHAR2(20 BYTE),rn CPID VARCHAR2(20 BYTE),rn D1 VARCHAR2(10 BYTE),rn D2 VARCHAR2(10 BYTE),rn D3 VARCHAR2(10 BYTE),rn D4 VARCHAR2(10 BYTE),rn D5 VARCHAR2(10 BYTE),rn D6 VARCHAR2(10 BYTE),rn D7 VARCHAR2(10 BYTE),rn D8 VARCHAR2(10 BYTE),rn D9 VARCHAR2(10 BYTE),rn D10 VARCHAR2(10 BYTE),rn D11 VARCHAR2(10 BYTE),rn D12 VARCHAR2(10 BYTE),rn CONTENTNAME VARCHAR2(200 BYTE),rn PARTNAME VARCHAR2(200 BYTE),rn REPORTTYPE VARCHAR2(2 BYTE),rn CONTENTID VARCHAR2(20 BYTE),rn SERVER VARCHAR2(5 BYTE),rn PROVINCE VARCHAR2(50 BYTE)rn)rnTABLESPACE OPENAPIrnPCTUSED 0rnPCTFREE 10rnINITRANS 1rnMAXTRANS 255rnPARTITION BY RANGE (LOGDATE)rn( rn PARTITION P_20130301 VALUES LESS THAN ('2013-03-01')rn LOGGINGrn NOCOMPRESSrn TABLESPACE OPENAPIrn PCTFREE 10rn INITRANS 1rn MAXTRANS 255rn STORAGE (rn INITIAL 64Krn NEXT 1Mrn MINEXTENTS 1rn MAXEXTENTS UNLIMITEDrn BUFFER_POOL DEFAULTrn ), rn PARTITION P_20130401 VALUES LESS THAN ('2013-04-01')rn LOGGINGrn NOCOMPRESSrn TABLESPACE OPENAPIrn PCTFREE 10rn INITRANS 1rn MAXTRANS 255rn STORAGE (rn INITIAL 64Krn NEXT 1Mrn MINEXTENTS 1rn MAXEXTENTS UNLIMITEDrn BUFFER_POOL DEFAULTrn ), rn PARTITION P_20130501 VALUES LESS THAN ('2013-05-01')rn LOGGINGrn NOCOMPRESSrn TABLESPACE OPENAPIrn PCTFREE 10rn INITRANS 1rn MAXTRANS 255rn STORAGE (rn INITIAL 64Krn NEXT 1Mrn MINEXTENTS 1rn MAXEXTENTS UNLIMITEDrn BUFFER_POOL DEFAULTrn ), rn PARTITION P_20130601 VALUES LESS THAN ('2013-06-01')rn LOGGINGrn NOCOMPRESSrn TABLESPACE OPENAPIrn PCTFREE 10rn INITRANS 1rn MAXTRANS 255rn STORAGE (rn INITIAL 64Krn NEXT 1Mrn MINEXTENTS 1rn MAXEXTENTS UNLIMITEDrn BUFFER_POOL DEFAULTrn ), rn PARTITION P_20130701 VALUES LESS THAN ('2013-07-01')rn LOGGINGrn NOCOMPRESSrn TABLESPACE OPENAPIrn PCTFREE 10rn INITRANS 1rn MAXTRANS 255rn STORAGE (rn INITIAL 64Krn NEXT 1Mrn MINEXTENTS 1rn MAXEXTENTS UNLIMITEDrn BUFFER_POOL DEFAULTrn ), rn PARTITION P_20130801 VALUES LESS THAN ('2013-08-01')rn LOGGINGrn NOCOMPRESSrn TABLESPACE OPENAPIrn PCTFREE 10rn INITRANS 1rn MAXTRANS 255rn STORAGE (rn INITIAL 64Krn NEXT 1Mrn MINEXTENTS 1rn MAXEXTENTS UNLIMITEDrn BUFFER_POOL DEFAULTrn ), rn PARTITION P_20130901 VALUES LESS THAN ('2013-09-01')rn LOGGINGrn NOCOMPRESSrn TABLESPACE OPENAPIrn PCTFREE 10rn INITRANS 1rn MAXTRANS 255rn STORAGE (rn INITIAL 64Krn NEXT 1Mrn MINEXTENTS 1rn MAXEXTENTS UNLIMITEDrn BUFFER_POOL DEFAULTrn ), rn PARTITION P_20131001 VALUES LESS THAN ('2013-10-01')rn LOGGINGrn NOCOMPRESSrn TABLESPACE OPENAPIrn PCTFREE 10rn INITRANS 1rn MAXTRANS 255rn STORAGE (rn INITIAL 64Krn NEXT 1Mrn MINEXTENTS 1rn MAXEXTENTS UNLIMITEDrn BUFFER_POOL DEFAULTrn ), rn PARTITION P_20131101 VALUES LESS THAN ('2013-11-01')rn LOGGINGrn NOCOMPRESSrn TABLESPACE OPENAPIrn PCTFREE 10rn INITRANS 1rn MAXTRANS 255rn STORAGE (rn INITIAL 64Krn NEXT 1Mrn MINEXTENTS 1rn MAXEXTENTS UNLIMITEDrn BUFFER_POOL DEFAULTrn ), rn PARTITION P_20131201 VALUES LESS THAN ('2013-12-01')rn LOGGINGrn NOCOMPRESSrn TABLESPACE OPENAPIrn PCTFREE 10rn INITRANS 1rn MAXTRANS 255rn STORAGE (rn INITIAL 64Krn NEXT 1Mrn MINEXTENTS 1rn MAXEXTENTS UNLIMITEDrn BUFFER_POOL DEFAULTrn ), rn PARTITION P_20140101 VALUES LESS THAN ('2014-01-01')rn LOGGINGrn NOCOMPRESSrn TABLESPACE OPENAPIrn PCTFREE 10rn INITRANS 1rn MAXTRANS 255rn STORAGE (rn INITIAL 64Krn NEXT 1Mrn MINEXTENTS 1rn MAXEXTENTS UNLIMITEDrn BUFFER_POOL DEFAULTrn )rn)rnNOCOMPRESS rnNOCACHErnNOPARALLELrnMONITORING;rnrn[/code]rnrn2、查询语句(先后对logdate字段建立了全局索引和分区索引,查询都没有使用到索引)rn[code=sql]select * from TD_REPORT_ORDER_CHANNEL_DATA where logdate = '2013-05-15' [/code]rnrn3、查询语句(如此,便用到了索引)rn[code=sql]select * from TD_REPORT_ORDER_CHANNEL_DATA where logdate = '20130515' [/code]rnrn求解释!!!
MySQL8.0全局索引的问题?
我在数据库中建了一张demo表以name为全局索引,存储引擎innodb: demo表然后我用全局索引去匹配: 没有找到,但是如果我去select * from demo where match(name) against('aaa')这样能匹配大第一条数据,这是为什么?MySQL全文索引不是可以模糊查询嘛? 然后我用myisam建了一个demo2,同样加上全问索引。 再去...
分区表全局索引和局部索引如何选择?
我对一张表千万级别按字段年份(NF,数据形如:2011,2012)分区rn业务上基本都是在同一年度操作 ,语句一般都类似 Select * from t_test where nf=2011 and c1 = xx;rn既然分区了,并且NF字段值只有几个,那么我还有没有必要对NF字段建索引?如果需要,是建成全局索引还是局部索引?rn另外, 我表有c1和c2这两个字段,一般查询的时候会用到nf和c1 或者nf和c2, 那我建索引的时候,是建2个组合索引(nf,c1)和(nf,c2),还是单独为c1和c2建索引? 谢谢~~
如何处理全局数据?
我要做的软件是一个实时数据处理软件,数据只会从一个地方取,也不是很多基本上是100个实型数据,但是我要把这些数据以网格浏览,柱装图,曲线图,打印等功能,这些数据要每隔一分钟就从网上取一次,应该怎么处理。请大家给讲讲思路。应该是放在App类中还是放在mainframe中,如何传递给其他视图,再应该什么处理,比较好的办法什么?rn谢谢各位
问个全局处理的问题
一个asp.net工程, 里面都是html,会ajax请求后台cs文件rnrn请问,出现未catch的错误时,统一跳转一个 页面rnrnrn怎么做最 合适呢 ?
索引分区(本地索引和全局索引)
--索引分区(本地索引和全局索引) 对索引分区有以下两种方法: 按表分区的方式对索引分区:这也称为本地索引(local index)。每个表分区都有一个索引分区,而且这个索引分区只会对这个表分区中的数据进行索引。 同一索引分区中的所有条目都指向一个表分区,同一表分区中的所有行都会放在一个索引分区中。 按区间或散列对索引分区:这也称为全局分区索引(globally parti
分区索引,本地索引,全局索引的区别
oracle 分区索引,本地索引,全局索引的区别
oracle索引,常见索引问题
oracle索引,常见索引问题,详见PPT内容
.net中如何处理全局数组的问题?
有两个包含30个元素的数组,被同一页面中多个function使用,数组中元素的值都是确定并且不变的,请问怎么处理阿?我用的是vb。
如何改善Oracle的索引
1、速度因素      [b]PARALLEL选项[/b]:当创建索引时,Oracle首先会进行全表扫描来收集符号键和ROWID对,而PARALLEL选项允许多处理器并行扫描表,这样就会加速索引的创建过程。一般推荐的PARALLEL值为CPU数减1。      [b]NOLOGGING选项[/b]:NOLOGGING选项因为不写日志,所以大大提高了性能,比不使用NOLOGGING选项大约会...
oracle 如何创建索引
比如说我现在有一张表 a 中 要以cid为索引 rn 请问我怎么创建 cid 的索引?
SQL2005如何做全局索引
我现有一系统,由于数据量多,数据库文件大,目前查询和使用速度都受到影响,有人建议做一个全局索引,以提高速度,可以我对这个功能不熟悉,希望有高人指点一下。rn我也看了一些帖子,但是仍然有点不明白,主要疑惑是以下内容:rn1、这个全局索引是指的运行哪个工具就可以吗?rn2、如果是运行哪个工具,是不是那个数据库引擎优化工具,但是这个需要一个跟踪文件是吗?rn3、如果是需要一个跟踪文件,意思就是当我系统慢的时候,即时跟踪,然后保存该文件后,再进行索引?但是这样就不是全局索引吧,因为这个时候不是所有表都会涉及到啊?rnrnrn4、我另外看到有个帖子可以运行一个全局命令,exec什么的,忘记了,因为在家里写的这个帖子。rn 大约花了10多分钟,信息显示是成功了,但是重新运行我的系统,感觉速度没有多少变化啊,是不是我运行这个命令后,应该是查看报告信息,然后再手工索引?可是这个报告哪儿查询呢。rnrn可能是我自己搞混了,希望有用过的高手告诉一下,我应该如何操作这个全局索引,最好步骤之类的资料,万分感谢!
Phoenix全局索引
索引本质 • 全局索引是Phoenix二级索引的一种 • 全局索引的本质是通过一张单独的HBase存储索引数据,用空间换时间加速查询 • 查询路径 • 如果查询的列都在索引表中, 只需要查询一次索引表 • 如果查询的列只有部分在索引表中,需要回查数据表 • 功能扩展 • 全局函数索引 • 全局覆盖索引
分区表和全局索引
1.select index_name,index_type,table_owner,uniqueness,status,a.partitioned from user_indexes a where a.table_name='BP_LINKMSG_TB'; SQL> select index_name,index_type,table_owner,uniqueness,status...
知识点全局索引
1.Tensorflow tensorflow开源项目github https://github.com/tensorflow/models//图片分类 2.python 3.numpy 4.NLP ...
全局分区索引
分区索引,包括全局分区索引和局部分区索引2种 全局分区索引 :    索引的分区键可以选择跟表的分区键不一致。能用于表的unique与primary约束。 建成后有多个段,每个段代表一个索引分区,每个索引分区中的键值可以指向任何表分区。可以依赖普通的表,也可以依赖分区表建立。可能索引分区数不等于表分区数。只能按range或hash(10g起)对索引分区。全局索引的range分区最后一个
oracle 的 全局静态变量如何使用
如题,能贴个例子最好,拜谢各位达人了!!!!
oracle 分区索引的问题
我有个表存的设备 就拿用户表来说把要存几千万个用户rn如果要分区是不是只有建ID列HASH的分区?如果我建了HASH分区 建立索引是分区索引好还是全局索引好?rnrn分区索引时是不是先找第一个分区的分区索引,没有再找下一个分区的分区索引这样查的?
请教oracle索引问题
有表:TB_GATHERADDR 我针对STATE 、addrtype 分别建立了索引A、B:rn1:select * from TB_GATHERADDR where (STATE =2 or STATE=3) and addrtype = '门址' order by addrnamestd查询结果一个索引没有用上rn2:select * from TB_GATHERADDR where STATE =2 查询结果使用了索引Arn3:select * from TB_GATHERADDR where STATE =3 查询结果没有使用任何索引rn4:select * from TB_GATHERADDR where addrtype = '门址' 查询结果没有使用任何索引rnrn其中A一个星期前建的,B是刚建的,是不是索引刚建立不能被使用到。
oracle分区索引问题
我创建了1个普通表;一个分区表,分区表按月份划分了2个区。然后分别在普通表创建索引,在分区表上分别创建全局和本地索引。跨分区,查询了8千万条数据进行性能测试。可是得出的结果却是使用了全局索引的分区表,要比使用本地索引的分区表和普通表的效率还要低。按常理说,如果跨分区查数据的话,使用全局索引的分区表要比使用局部索引的分区表的效率高阿,高手们这是怎么回事阿??rn=========================rn分区表:rnCREATE TABLE TABLE_PARTITION(rn USERID VARCHAR2(256 BYTE) NOT NULL, rn USERNAME VARCHAR2(256 BYTE) NOT NULL,rn AGE NUMBER(10) NOT NULL,rn SEX VARCHAR2(256 BYTE) NOT NULL,rn BIRTHDAY DATE NOT NULL,rn TEST1 VARCHAR2(256 BYTE) NOT NULL,rn TEST2 VARCHAR2(256 BYTE) NOT NULL,rn TEST3 VARCHAR2(256 BYTE) NOT NULL,rn TEST4 VARCHAR2(256 BYTE) NOT NULLrn )rn PARTITION BY RANGE (BIRTHDAY) rn ( rn PARTITION ORD_PART01 VALUES LESS THAN (to_date('2011-02-01','yyyy-mm-dd')) TABLESPACE PARTITIONSPACE_A,rn PARTITION ORD_PART02 VALUES LESS THAN (to_date('2011-03-01','yyyy-mm-dd')) TABLESPACE PARTITIONSPACE_Brn )rn========================rn分区全局索引:rn CREATE INDEX IDX_GLOBAL_PARTITION_BIRTHDAYrn ON TABLE_PARTITION(BIRTHDAY)rn GLOBAL PARTITION BY RANGE (BIRTHDAY)rn (rn PARTITION I_ORD_PART01 VALUES LESS THAN (to_date('2011-02-01','yyyy-mm-dd')) TABLESPACE PARTITION_INDEX_SPACE,rn PARTITION I_ORD_OTHER VALUES LESS THAN (MAXVALUE) TABLESPACE PARTITION_INDEX_SPACE_Brn );rn===========================rn分区本地索引:rnCREATE INDEX IDX_LOCAL_PARTITION_BIRTHDAY ON TABLE_PARTITION(BIRTHDAY) rn LOCAL (PARTITION I_ORD_PART01 TABLESPACE PARTITION_INDEX_SPACE,rn PARTITION I_ORD_PART02 TABLESPACE PARTITION_INDEX_SPACE_Brn );rn===========================rnsql测试语句:rnselect count(*) from TABLE_PARTITION where (BIRTHDAY > to_date('2011-01-03','yyyy-mm-dd') and BIRTHDAY < to_date('2011-02-12','yyyy-mm-dd'));rn============================rn大虾们帮帮忙阿!!!!
oracle索引问题
有表表APPLICATION_DATA_BAK 记录条数为500万,字段段link_id的有6种取值,且不能为空。现有查询语句rnSelect * from APPLICATION_DATA_BAK WHERE LINK_ID=342rn不加任何索引的执行计划为rn238683 rows selected.rnElapsed: 00:00:15.11rnExecution Planrn----------------------------------------------------------rn 0 SELECT STATEMENT Optimizer=ALL_ROWS (Cost=13624 Card=239728rn Bytes=13904224)rnrn 1 0 TABLE ACCESS (FULL) OF 'APPLICATION_DATA_BAK' (TABLE) (Cosrn t=13624 Card=239728 Bytes=13904224)rnStatisticsrn----------------------------------------------------------rn 195 recursive callsrn 0 db block getsrn 77193 consistent getsrn 61349 physical readsrn 0 redo sizern 6482097 bytes sent via SQL*Net to clientrn 175544 bytes received via SQL*Net from clientrn 15914 SQL*Net roundtrips to/from clientrn 4 sorts (memory)rn 0 sorts (disk)rn 238683 rows processedrnrnrn对LINK_ID加bitmap索引时的执行计划为:rn238683 rows selected.rnElapsed: 00:00:14.62rnExecution Planrn----------------------------------------------------------rn 0 SELECT STATEMENT Optimizer=ALL_ROWS (Cost=13624 Card=239728rn Bytes=13904224)rnrn 1 0 TABLE ACCESS (FULL) OF 'APPLICATION_DATA_BAK' (TABLE) (Cosrn t=13624 Card=239728 Bytes=13904224)rnStatisticsrn----------------------------------------------------------rn 1 recursive callsrn 0 db block getsrn 77143 consistent getsrn 61226 physical readsrn 0 redo sizern 6482097 bytes sent via SQL*Net to clientrn 175544 bytes received via SQL*Net from clientrn 15914 SQL*Net roundtrips to/from clientrn 0 sorts (memory)rn 0 sorts (disk)rn 238683 rows processedrnrn加索引后发现性能并没有改善,同时查询计划中也并没有使用索引,因此我强制使用指定的索引,起sql语句为select /*+ index(APPLICATION_DATA_BAK, LINKID_INDEX)*/ * FROM APPLICATION_DATA_BAK WHERE LINK_ID=342; 其执行计划为:rn238683 rows selected.rnElapsed: 00:00:13.34rnExecution Planrn----------------------------------------------------------rn 0 SELECT STATEMENT Optimizer=ALL_ROWS (Cost=16816 Card=239728rn Bytes=13904224)rnrn 1 0 TABLE ACCESS (BY INDEX ROWID) OF 'APPLICATION_DATA_BAK' (Trn ABLE) (Cost=16816 Card=239728 Bytes=13904224)rnrn 2 1 BITMAP CONVERSION (TO ROWIDS)rn 3 2 BITMAP INDEX (SINGLE VALUE) OF 'LINKID_INDEX' (INDEX (rn BITMAP))rnStatisticsrn----------------------------------------------------------rn 0 recursive callsrn 0 db block getsrn 23028 consistent getsrn 7218 physical readsrn 0 redo sizern 17347210 bytes sent via SQL*Net to clientrn 175544 bytes received via SQL*Net from clientrn 15914 SQL*Net roundtrips to/from clientrn 0 sorts (memory)rn 0 sorts (disk)rn 238683 rows processedrn性能几乎没有改善,请问为了提高该查询语句的性能,该怎么加索引呢,谢谢!rn
关于oracle索引的问题
各位大虾,我有几个关于索引的问题请大家指教一下:rn1、索引的定义。索引就是类似于书籍目录作用、对数据库表中一个或多个列的值进行排序的数据(结构),其作用主要是为了改善查询性能,不知道理解得对不对?rn2、索引分为B-树索引和位图索引,其中B-树、位图指的就是实现索引的数据结构?rn3、B-树索引分为:根节点、分支节点和叶子节点三层结构。这个层次结构是语义上的,还是实际上索引的实现就是这三层结构,我的意思是分支节点会不会有多级(比如:分支节点的下级节点又是一个分支节点?),这样的话整个索引结构就>3层了?rn4、索引各节点的内容我参看了资料http://space.itpub.net/9842/viewspace-312607,其中关于节点内容的描述如有不对觐请提出,非常感谢!rn5、根据http://space.itpub.net/9842/viewspace-312607中的描述,实际索引的实现是不是应该就是图中的根节点块、分支节点块和叶子节点块,这三层结构,而叶子节点与行数相等,一一对应,不知道理解得对不对?而叶子节点和分支节点数量的对应关系是怎么样的?rn6、在http://space.itpub.net/14075938/viewspace-509801中关于B树节点的描述图中,右侧的分支节点块有两个条目,不过下面有三个节点,是不是画错了?根据前面资料的介绍,分支节点与叶子节点块应该是一一对应的啊?rnrn非常感谢大家!
建立oracle索引的问题
我想在oracle的一张表中建立一个“id"字段。把它设为索引字段,每插入一条记录让它自动加1。怎么做?在线等待。谢谢!!
oracle索引失效问题
一张表,主键 YSFYB_ID ,三个索引 DYXSXXBID ,SFXMDMB_ID,DYXSXXB rnSQL> desc ysfyb rnName Type rn---------- ------------- rnYSFYB_ID NUMBER rnNDMB_ID NUMBER rnXQDMB_ID NUMBER rnDYXSXXBID NUMBER rnSFXMDMB_ID NUMBER rnDYXSXXB VARCHAR2(20) rnrnsql语句1: rnselect * from ysfyb where sfxmdmb_id in (1,2,3) and dyxsxxb in ('aa','bb') and dyxsxxbid in (1,2,3,4,5,6....) 使用了索引扫描 rnrnsql语句2: rnselect * from ysfyb where sfxmdmb_id in (1,2,3) and dyxsxxb in ('aa','bb') and dyxsxxbid in (select xsid from aa where zydmb_id=1 and xbdmb_id=1) rn索引失效,没有用索引查询 rnrn请问如何修改 sql语句2 在可以通过子查询的情况下使用索引查询 rnrn刚才提问有朋友建议用 exists ,但是试了一下以为可以,但结果还是不行,但是帖子不小心被我结了,重复一个帖子,希望高人指点一二
ORACLE视图与索引问题
以下问题的基表是跨实例的,rnrn[size=16px]create view v_a as as select * from a@db003[/size]rnrn1、基表的索引对视图是否有效。rn2、通过视图v_a如何得到基表a@db003的索引信息,注意不能直接访问a@db003?
oracle中的索引问题。
这个表中有1亿3千万条数据。检索的数据件数没有超过30%,用索引的速度,比全表检索的速度慢很多。全表检索只用0.56s,而用索引检索根本就没检索出来。有朋友能解释下为什么吗?
oracle 表连接与索引的问题
环境 oracle 8.05rn有表A(字段A1)和表B(字段B1).rn字段A1,B1上都有索引.rnA,B 表联查rnsql1 这个sql 非常快 2秒的样子rn[code=SQL]select * from A,B where A.A1=B.B1(+) and A1='值1'[/code]rnsql2 这个sql 慢到让人无法忍受rn[code=SQL]select * from A,B where A.A1=B.B1(+) and B1='值1'[/code]rnrn是不是外联以后 表B的索引不起作用了?rn求原因和解决方案.rnrn注:在oracle10g 中测试相差很小,两个sql语句都非常快.rn
oracle建立索引问题
最近部署一个java项目,从官方下的sql文件,直接执行的时候提示确实确实左括号,在sqlplus里手敲还是同样的提示,请问下面的语句哪里有错?rn[code=sql]CREATE INDEX i_audit_log_event_audit_table ON audit_log_event USING btree (audit_table);rnCREATE INDEX i_audit_log_event_user_id ON audit_log_event USING btree (user_id);rnCREATE INDEX i_audit_log_event_entity_id ON audit_log_event USING btree (entity_id);rnCREATE INDEX i_audit_log_event_audit_log_event_type_id ON audit_log_event USING btree (audit_log_event_type_id);rnCREATE INDEX i_audit_log_event_event_crf_id ON audit_log_event USING btree (event_crf_id);rnCREATE INDEX i_audit_log_event_study_event_id ON audit_log_event USING btree (study_event_id);rnCREATE INDEX i_audit_log_event_event_crf_version_id ON audit_log_event USING btree (event_crf_version_id);rnCREATE INDEX i_null_value_type_code ON null_value_type USING btree (code);rnCREATE INDEX i_rule_oc_oid ON rule USING btree (oc_oid);rnCREATE INDEX i_rule_rule_expression_id ON rule USING btree (rule_expression_id);[/code]
oracle单索引的问题
有个sql优化的问题rnid上面有单索引idx_id之类的,然后select id,name from emp where id <> 0;如何优化
oracle 索引的问题
请问在创建表时,如何选择在那个字段上建索引,怎么建索引才能使数据库的性能更高,请各位指教,谢谢!!
oracle 视图索引问题
由于需要,要使用视图,但是使用视图后,句子的执行计划改变了,不会用到索引了。。。rn有什么方法能让句子使用到索引。。。不要修改sql句子,量太大了。。是不是在建视图的时候有诀窍?
oracle使用索引的问题
-- Create tablerncreate table IPMONMEXrn(rn EXEC_SQN VARCHAR2(16) not null,rn INPATIENT_NO VARCHAR2(14) not null,rn PATIENT_NO VARCHAR2(10) not null,rn DEPT_CODE VARCHAR2(4) not null,rn NURSE_CELL_CODE VARCHAR2(4) not null,rn MO_ORDER VARCHAR2(16) not null,rn DOC_CODE VARCHAR2(6),rn DOC_NAME VARCHAR2(10),rn MO_DATE DATE,rn BABY_FLAG CHAR(1) not null,rn HAPPEN_NO NUMBER(5),rn SET_ITMATTR CHAR(1),rn SET_SUBTBL CHAR(1),rn TYPE_CODE VARCHAR2(2),rn DECMPS_STATE CHAR(1),rn CHARGE_STATE CHAR(1) not null,rn PRN_EXELIST CHAR(1) not null,rn NEED_CONFIRM CHAR(1),rn UNDRUG_CODE VARCHAR2(12),rn INPUT_CODE VARCHAR2(8),rn SPELL_CODE VARCHAR2(8),rn UNDRUG_NAME VARCHAR2(50),rn CLASS_CODE VARCHAR2(3),rn CLASS_NAME VARCHAR2(10),rn EXEC_DPCD VARCHAR2(4),rn EXEC_DPNM VARCHAR2(16),rn COMB_NO VARCHAR2(14),rn MAIN_DRUG CHAR(1),rn USAGE_CODE VARCHAR2(3),rn USE_NAME VARCHAR2(20),rn ENGLISH_AB VARCHAR2(4),rn DFQ_FREQ VARCHAR2(6),rn DFQ_CEXP VARCHAR2(30),rn QTY_TOT NUMBER(5),rn STOCK_UNIT VARCHAR2(10),rn UNIT_PRICE NUMBER(12,6),rn USE_TIME DATE not null,rn EMC_FLAG CHAR(1),rn VALID_FLAG CHAR(1),rn VALID_DATE DATE,rn VALID_USERCD VARCHAR2(6),rn CONFIRM_FLAG CHAR(1),rn CONFIRM_DATE DATE,rn CONFIRM_USERCD VARCHAR2(6),rn CONFIRM_DEPTCD VARCHAR2(4),rn EXECUTE_FLAG CHAR(1),rn EXECUTE_DATE DATE,rn EXECUTE_USERCD VARCHAR2(6),rn EXECUTE_DEPTCD VARCHAR2(4),rn CHARGE_FLAG CHAR(1),rn CHARGE_DATE DATE,rn CHARGE_USERCD VARCHAR2(6),rn CHARGE_DEPTCD VARCHAR2(4),rn ITEM_NOTE VARCHAR2(8),rn APPLY_NO VARCHAR2(16),rn MO_NOTE1 VARCHAR2(80),rn MO_NOTE2 VARCHAR2(80),rn DECO_DATE DATE,rn FIRST_DAY CHAR(1) not null,rn EXEC_PRNFLAG CHAR(1) default '1',rn EXEC_PRNDATE DATE,rn EXEC_PRNUSERCD VARCHAR2(6),rn NOTE_NO VARCHAR2(14),rn SUBTBL_FLAG VARCHAR2(1),rn UNEXE_NUM NUMBER default 1,rn OPER_FLAG VARCHAR2(1) default '0'rn)rnpartition by range (EXEC_SQN)rn(rn partition DATE2005_1 values less than ('2006010100000000')rn tablespace USERS2005rn pctfree 10rn pctused 40rn initrans 1rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn ),rn partition DATE2006_1 values less than ('2007010100000000')rn tablespace USERS2006rn pctfree 10rn pctused 40rn initrans 1rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn ),rn partition DATE2007_1 values less than ('2008010100000000')rn tablespace USERS2007rn pctfree 10rn pctused 40rn initrans 1rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn ),rn partition DATE2008_1 values less than ('2009010100000000')rn tablespace USERS2008rn pctfree 10rn pctused 40rn initrans 1rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn ),rn partition DATE2009_1 values less than ('2010010100000000')rn tablespace USERS2009rn pctfree 10rn pctused 40rn initrans 1rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn )rn)rn;rnrn-- Create/Recreate primary, unique and foreign key constraints rnalter table IPMONMEXrn add constraint PK_IPMONMEX primary key (EXEC_SQN)rn using index rn tablespace INDXrn pctfree 10rn initrans 2rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn );rn-- Create/Recreate indexes rncreate index I_IPMONMEX02 on IPMONMEX (CHARGE_STATE)rn tablespace INDXrn pctfree 10rn initrans 2rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn );rncreate index I_IPMONMEX05 on IPMONMEX (MO_ORDER, USE_TIME)rn tablespace INDXrn pctfree 10rn initrans 2rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn );rncreate index I_IPMONMEX06 on IPMONMEX (USE_TIME, COMB_NO)rn tablespace INDXrn pctfree 10rn initrans 2rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn );rncreate index I_IPMONMEX07 on IPMONMEX (NOTE_NO)rn tablespace INDXrn pctfree 10rn initrans 2rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn );rncreate index I_IPMONMEX08 on IPMONMEX (INPATIENT_NO, CHARGE_STATE)rn tablespace INDXrn pctfree 10rn initrans 2rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn );rncreate index I_IPMONMEX_09 on IPMONMEX (COMB_NO)rn tablespace INDXrn pctfree 10rn initrans 2rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn );rncreate index I_IPMONMEX_10 on IPMONMEX (VALID_FLAG, CLASS_CODE)rn tablespace USERSrn pctfree 10rn initrans 2rn maxtrans 255rn storagern (rn initial 64Krn minextents 1rn maxextents unlimitedrn );rn索引:rnI_IPMONMEX02 Normal CHARGE_STATE rnI_IPMONMEX05 Normal MO_ORDER, USE_TIME rnI_IPMONMEX06 Normal USE_TIME, COMB_NO rnI_IPMONMEX07 Normal NOTE_NO rnI_IPMONMEX08 Normal INPATIENT_NO, CHARGE_STATE rnI_IPMONMEX_09 Normal COMB_NO rnI_IPMONMEX_10 Normal VALID_FLAG, CLASS_CODE rnrnrnrn执行这个语句rnselect a.charge_state /*+index(ipmonmex I_IPMONMEX_09)*/ (/*+index(a I_IPMONMEX_09)*/) 这两个方式都试过rn from ipmonmex arn where a.charge_state = '1'rn and a.comb_no = '20090101622602' rnoralce优化器用到的是 I_IPMONMEX02 索引 ,而实际想用到的是I_IPMONMEX_09索引 检索的速度相当慢 3分钟左右rn即使用了强制使用I_IPMONMEX_09这个索引,也还是执行I_IPMONMEX02 索引rnrnselect a.charge_statern from ipmonmex arn where a.comb_no = '20090101622602' rn用到的是 I_IPMONMEX_09索引,检索的速度相当快,不到一秒。rnrn想问一下,oracle的优化器为什么没有使用I_IPMONMEX_09这个索引那,即使是强制使用也没有效果,rnOracle优化器使用索引的规则是什么那 谢谢各位大虾了rnrnrnrnrnrn
oracle 索引失效问题
一张表,主键 YSFYB_ID ,三个索引 DYXSXXBID ,SFXMDMB_ID,DYXSXXBrnSQL> desc ysfybrnName Type rn---------- ------------- rnYSFYB_ID NUMBER rnNDMB_ID NUMBER rnXQDMB_ID NUMBER rnDYXSXXBID NUMBER rnSFXMDMB_ID NUMBER rnDYXSXXB VARCHAR2(20) rnrnsql语句1:rnselect * from ysfyb where sfxmdmb_id in (1,2,3) and dyxsxxb in ('aa','bb') and dyxsxxbid in (1,2,3,4,5,6....) 使用了索引扫描rnrnsql语句2:rnselect * from ysfyb where sfxmdmb_id in (1,2,3) and dyxsxxb in ('aa','bb') and [color=#FF0000]dyxsxxbid in (select xsid from aa where zydmb_id=1 and xbdmb_id=1)[/color]rn索引失效,没有用索引查询rnrn请问如何修改 sql语句2 在可以通过子查询的情况下使用索引查询rnrn rnrn
Oracle索引的问题。
对一个数据表的Fdate(nvarchar(12))建索引。normal属性rnselect fdate,sum(aaa) as aaa from tab1 trnwhere fdate >= '2005-04-08' and fdate <= '2005-05-08' group by fdate order by fdate descrnrn第一次访问的时候因为IO原因,速度会很慢。之后会很快rn有没有办法使这条语句第一次访问的时候也很快?需要做什么优化?rnrn
oracle 索引问题
where(a is null or table.col = a) rnrn这段代码是在存储过程中 a是变量 通过参数给a赋值rnrn问题:怎么样才能走表的索引?加hint的话怎么给多个表的字段加?rnrn自己测试时候把a换成常量走索引。
Oracle关于索引问题?
primary key设的是唯一值吗?复合索引怎么SQL语句怎么写?
相关热词 c++和c#哪个就业率高 c# 批量动态创建控件 c# 模块和程序集的区别 c# gmap 截图 c# 验证码图片生成类 c# 再次尝试 连接失败 c#开发编写规范 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数