インデックスキーカラム VS インデックスインクルードカラム
2023-08-23 21:08:41
質問
インデックスキーカラムとインデックスインクルードカラムの違いについて、どなたか説明してください。
現在、私は4つのインデックスキーカラムと0つのインクルードカラムを持つインデックスを持っています。
ありがとうございます。
どのように解決するのですか?
インデックスのキーカラムはインデックスのB-treeの一部です。含まれるカラムはそうではありません。
2つのインデックスを取る。
CREATE INDEX index1 ON table1 (col1, col2, col3)
CREATE INDEX index2 ON table1 (col1) INCLUDE (col2, col3)
index1
はこの種のクエリに適しています。
SELECT * FROM table1 WHERE col1 = x AND col2 = y AND col3 = z
ここで
index2
はこの種のクエリに適しています。
SELECT col2, col3 FROM table1 WHERE col1 = x
最初のクエリで
index1
は、関心のある行を素早く特定するための仕組みを提供します。このクエリは(おそらく)インデックスシークとして実行され、その後、完全な行を取得するためにブックマーク検索が行われます。
2番目のクエリでは
index2
はカバーリング インデックスとして機能します。インデックスがクエリを満たすために必要なすべてのデータを提供するので、SQL Server はベース テーブルをヒットする必要はまったくありません。
index1
もまた、この場合、カバーリングインデックスとして機能することができます。
カバーリングインデックスが必要だが、シークしない、あるいは、許可されたデータ型(例えば、XML)でないためにできないので、すべての列をB-treeに追加したくない場合、INCLUDE句を使用します。
関連
-
[解決済み] FOREIGN KEY制約で参照されているため、テーブルを切り捨てることができないのですか?
-
[解決済み] 存在しない重複があるため、インデックスを作成できない?
-
[解決済み] SQL Server テーブルにカラムが存在するかどうかを確認する方法は?
-
[解決済み] カラムの変更:NULLをNOT NULLに変更する
-
[解決済み] SQL Server - 挿入された行のIDを取得するための最良の方法は?
-
[解決済み] NULLも許容するユニークな制約を作成するにはどうしたらいいですか?
-
[解決済み] T-SQLです。結合で削除する行を選択する
-
[解決済み】SQL Serverで既存のテーブルにデフォルト値を持つカラムを追加する
-
[解決済み] テーブルを変更し、複数の列を追加する ms sql
-
[解決済み] SQL Server 2005 で非クラスタ化インデックスが存在するかどうかを確認する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 存在しない重複があるため、インデックスを作成できない?
-
[解決済み] SQL Server 2005でアップサート(更新または挿入)する方法
-
[解決済み] Sqlサーバーの文字列がNULLまたは空であるかどうかを確認する方法
-
[解決済み】SQL Serverスキーマは何の役に立つのか?
-
[解決済み] テーブルを変更し、複数の列を追加する ms sql
-
[解決済み] SQL Server Brokerを有効にするのに時間がかかりすぎる
-
[解決済み] SQL Server 2005 T-SQL での Base64 エンコーディング
-
[解決済み] データベーススキーマが存在するかどうかを問い合わせるには?
-
[解決済み] SQL Server 2008とSQL Server 2005の使用と日付時刻について
-
[解決済み] MARS (Multiple Active Result Sets)のデメリットとは?