テーブルには約10Kの行があります。この表の特定の列の個別の値を含む選択ドロップダウンがあるフォームが必要です。問題の列にインデックスがあります。DBインデックスの速度とキャッシング
パフォーマンスを向上させるために、個別の値を含むキャッシュテーブルを作成しました。そのため、10K行に対してselect distinct field from table
を実行する必要はありませんでした。意外なことに、select * from cachetable
(10行)を実行しているように見えるのは、10K行とは異なる選択を行うよりも速くないということです。どうしてこれなの?インデックスはすべて仕事をしていますか?メインテーブルのどの行がキャッシュテーブルをクエリすることでパフォーマンスが向上するのでしょうか?
+1実行計画を確認する – eduncan911