我正在优化我的一些查询,并且我有一个查询指出: select * from SC where c_id =“+ c_id” ** SC **的模式看起来像这样:索引问题:使用WHERE子句选择*。在哪里以及如何创建索引
SC ( c_id int not null, date_start date not null, date_stop date not null, r_t_id int not null, nt int, t_p decimal, PRIMARY KEY (c_id, r_t_id, date_start, date_stop));
我上应创建的索引是如何在这个顺序覆盖索引即时竞价:
INDEX(c_id, date_start, date_stop, nt, r_t_id, t_p)
这样做的原因为了我立足于:
的其中CLA使用c_id中的选择,从而使其成为第一个排序顺序。 接着,DATE_START和date_stop到指定排序的“范围”,在这些参数 接着被定义,NT因为它会选择NT 接着r_t_id,因为它是为特定类型的我的r_t表的ID 最后是t_p,因为它只是一个信息。
我不知道当它是一个SELECT ALL语句时,是否有必要以特定方式对它进行排序。 我应该说,那个SC不是最大的桌子。我可以说,有多少行包含但估计可能是<和1000
接下来的事情之间10补充说明的是,该SC,在不同的查询,将数据插入的SC,和我知道有插入表的索引可能会导致成本低,但是我能否以某种方式创建一个有效实现这种性能的金色中端方法。
不知道它是否有不同,但我使用IBM DB2版本9.7数据库
真诚
Mestika