InterBaseを使いこなすスレ
■ このスレッドは過去ログ倉庫に格納されています
0520484
NGNGちょっと見ていってくれませんでしょうか?
>493-495のTableでSQLでプライマリーキーを設定しないで
以下のIndexを作成します
create index TEST_IDX1 on uritrn(FIELD1, FIELD4);
create index TEST_IDX2 on uritrn(FIELD1, FIELD6);
create index TEST_IDX3 on uritrn(FIELD1, FIELD4, FIELD6);
create index TEST_IDX4 on uritrn(FIELD1, FIELD10, FIELD11);
create index TEST_IDX5 on uritrn(FIELD1, FIELD10, FIELD12, FIELD15);
create index TEST_IDX6 on uritrn(FIELD1, FIELD10, FIELD11, FIELD13, FIELD14, FIELD15);
さて同じSQL(ORDER BY FIELD1, FIELD6, FIELD4)を実行した場合
どれが使用されるかというと
なぜか一番下のTEST_IDX6が使用されます
もちろん速度は遅いです
ORDER BY句を削除しても同じでした
TEST_IDX2,かTEST_IDX3を使用するだろうと期待していたのですが
こういう結果になりました。
これって普通?
■ このスレッドは過去ログ倉庫に格納されています