私は次のクエリがありますは私ではなく、すべての時間のJOIN CREATE VIEWを使用する必要があり
SELECT t.*, a.hits AS ahits
FROM t, a
WHERE (t.TRACK LIKE 'xxx')
AND a.A_ID = t.A_ID
ORDER BY t.hits DESC, a.hits DESC
非常に頻繁に実行されます。表t
は約15M +行を持ち、a
は約3M +行を持っています。
上記のクエリでEXPLAIN
を実行したとき、私はいつも一時テーブルを作成したというメモを受け取りました。私は、上記のクエリに基づいて一時テーブルを作成するにはかなりの時間がかかることに気付きました。そして、これは十分な時間がかかります。
したがって、私は上記を使用してビューを作成する場合、私は疑問に思って言う:
CREATE VIEW v_t_a
SELECT t.*, a.hits AS ahits
FROM t, a
WHERE a.A_ID = t.A_ID
とに私のコードを変更します。
SELECT * FROM v_t_a WHERE TRACK LIKE 'xxx' ORDER BY hits DESC, ahits DESC
それはパフォーマンスを向上させるのだろうか?テンポラリテーブルの作成時間を削除しますか?
ありがとうございました。
このことについてのおかげで、Ramandeep。 –
いつでも! :) –