-1

2900000 レコードのテーブルがあります。現在、選択クエリを使用してデータを検索していますが、レコードを取得するのに 5 秒かかります。クエリを選択するだけで、実行に 4 ~ 5 秒かかります。

なぜそんなに時間がかかるのかわからない?

テーブルには、varchar(Max) である 4 つのフィールドがあります。何か問題の原因はありますか?

実行時間を短縮するために何をすべきかを誰かに提案できますか?

4

1 に答える 1

0

ほとんどの場合、WHERE 句で使用される列のために、テーブルにインデックスを追加する必要があります。テーブル スキーマ、データ、およびクエリ (または rdbms フレーバー) の詳細を知らなければ、誰もこれ以上支援することはほぼ不可能です。

SQL Server を使用していると仮定します (指定しなかったため)。その場合は、クエリを SQL Management Studio 内にコピーすることをお勧めしますが、実行前に最初に ctrl+m を押します (これにより、実際の実行計画が表示されます)。ここでクエリを実行します。完了すると、結果領域にタブが表示され、提案されたインデックス (存在する場合) が表示されます。

可能であれば、より具体的な詳細で質問を更新してください。

于 2012-07-19T07:37:52.637 に答える