0

次のような sqlite DB クエリがあります。

SELECT
    origin,
    destination,
    weight,
    rate,
    0 as group
    from groupAZones, groupARates
    where
    tms = groupZone

union all

SELECT
    origin,
    destination,
    weight,
    rate,
    1 as group
    from groupBZones, groupBRates
    where
    tms = groupZone

    union all

SELECT
    origin,
    destination,
    weight,
    rate,
    2 as group
    from groupCZones, groupCRates
    where
    tms = groupZone

    union all

SELECT
    origin,
    destination,
    weight,
    rate,
    3 as group
    from groupDZones, groupDRates
    where
    tms = groupZone

このようなクエリを最適化する良い方法はありますか? これらの 4 つのテーブルを組み合わせた単純なビューを作成しようとしています。これをビュー クエリとして使用すると、ビューへのクエリに約 13 秒かかります。

4 つのテーブルのインデックスを作成しようとしましたが、役に立たなかったようです。

私は SQL に関しては初心者のようなものです。単純なことを行うには十分な知識がありますが、まだ高度なトリックを学んでいます。

ポインタや情報は役に立ちます。

4

1 に答える 1

1

EXPLAIN QUERY PLANCL は、コマンドを実行する必要があると指摘しました。これにより、4 つのインデックスのうち 2 つが使用されていないことが判明しました。

ありがとうCL!

そのクエリを実行するためのより良い方法があるかどうかはまだ疑問に思っていますが、今のところ、必要なことを実行しています。

于 2013-03-25T15:56:24.820 に答える