0
这是汤姆的一个问题,但他现在很忙。在Oracle中使用功能索引
我不是一个DBA,只需一个简单的Java EE开发人员,也我是新来甲骨文,我被要求优化一些查询。
我有一个大表,这样
create table test_table(
DUMMY VARCHAR2(50),
COB DATE,
DATA VARCHAR2(100)
);
真正的表有更多的列,结构角落找寻COB日期。为了处理这个表,我使用了一个视图
create or replace force view test_view("DUMMY", "COB", "DATA")
AS
SELECT
DUMMY,
COB,
DATA
FROM test_table
WHERE
DUMMY IS NULL
OR DUMMY <> 'INTFR';
我主要通过COB日期查询这个视图。
SELECT * from TEST_VIEW where COB = '15-Dec-2010'
我想为查询优化特定的功能性指标,它看起来像这样
CREATE INDEX "TEST_TABLE_DUMMY_COB_IDX" ON "TEST_TABLE" (
case
when DUMMY IS NULL then COB
when DUMMY <> 'INTFR' then COB
end
);
据我了解,这样我就会有一天所有recrds在B *树索引表,用COB的关键字,这将优化我的一般查询使用,还是我需要更多的魔法来使它工作?
只有一个办法,找出:) 感谢。 – mavarazy 2011-01-14 15:11:50