我应该做什么指数?

时间:2014-09-30 08:52:58

标签: oracle indexing

我创建了一个表 data_test 包含两个字段 issue_date,calling_number 我已为此表添加了分区。 按比例分区(“ISSUE_DATE”)每日流量。 并在 calling_number 上创建了一个本地索引。 我应该使用哪个索引来使用以下查询:

SELECT * FROM data_test WHERE issue_date >'01-sep-2014' 
AND calling_number = '902000001'. 

现在选择太慢了。

1 个答案:

答案 0 :(得分:1)

如果您不需要仅出于性能原因维护唯一性并创建索引,则按列calling_number创建非唯一本地索引。分区键列不需要被索引为本地索引,无论如何都将被此列分区,当您通过issue_date指定条件时,将仅扫描适当的索引分区。

 create index data_test_idx on data_test(calling_number) local;