使用: Firebird 2.52
次のクエリの SELECT のパフォーマンスのために、テーブルの追加フィールドにインデックスが必要ですか?
希望するクエリ:
select inventory_id, max(batch_no) from invty_batch
where inventory_id = :I
group by inventory_id
テーブル構造:
CREATE TABLE INVTY_BATCH (
ROW_ID INTEGER NOT NULL,
INVENTORY_ID INTEGER NOT NULL,
BATCH_NO VARCHAR(8) NOT NULL,
INVTYRCPT_ID INTEGER NOT NULL,
UNITPRICE NUMERIC(12, 2) DEFAULT 0.0 NOT NULL);
ALTER TABLE INVTY_BATCH ADD PRIMARY KEY (ROW_ID);
CREATE UNIQUE INDEX IXINVTYIDBATCHNO ON INVTY_BATCH(INVENTORY_ID,BATCH_NO);
inventory_id 列と batch_no 列にインデックスを作成すると、特定のクエリのパフォーマンスが向上しますか?