0

私はクライアントのリストを持っています。約あります。そのテーブルには 200 万件のレコードがあります。テーブルの構造は次のとおりです。

ID(整数)、FLM、電子メール、住所、電話番号、BDAy; BDay を除く nvarchar 型のそれぞれ。

ID 列と FLM 列に 2 つの非クラスター化インデックスがあります。次のようなクエリを実行すると

SELECT * FROM tbl where FLM LIKE 'value'

私は約で遅延を経験しています。1分。したがって、質問:

  • FLM にクラスター化インデックスを追加すると、パフォーマンスが変わりますか?
  • ここで他に何を最適化できますか?

プログラムからどのように結果を得るのですか? を使用SqlConnectionして接続し、オブジェクトでクエリを指定してから、 をSQlCommand介してデータを取得しますDataReader。たぶん、ここでこれを最適化して、より良い結果を得ることができます(おそらくデータセットを使用して)?

4

1 に答える 1

0

ID を非クラスター化インデックスではなく、クラスター化インデックスにします。投稿したクエリだけを考えると、FLM列の非クラスター化インデックスは何もしないので、削除できます。

Clustered Index によってパフォーマンスが向上することを願っています。

于 2012-09-04T11:44:15.707 に答える