SQLを学んでいます。最近、SQL のインデックスに出会いました。完全に理解できませんでした。インデックスとは何か、用途、およびさまざまなタイプを簡単な言葉で説明できますか。
前もってありがとう、ヴァル。
SQLを学んでいます。最近、SQL のインデックスに出会いました。完全に理解できませんでした。インデックスとは何か、用途、およびさまざまなタイプを簡単な言葉で説明できますか。
前もってありがとう、ヴァル。
SQL のインデックスは、電話帳や辞書の裏表紙とほとんど同じです。サーバーが物事をより速く見つけるのに役立ちます。
ユーザーの姓を検索するクエリがあるとします。
SQL インデックスには、上記の項目に加えて、含まれる列などの追加機能がいくつかあります。これにより、インデックス ルックアップのパフォーマンスが向上します。
何かのようなもの
SELECT *
FROM MyTable
WHERE Surname = 'TADA'
その列に索引をSurname
付けると、パフォーマンスが大幅に向上します。
インデックスには複数の列を含めることができ、そのような列の順序によって違いが生じます。
上記のテーブルMyTable
に作成されたインデックスが(FirstName, Surname)
あり、上記のクエリがインデックスを最適に利用できないとしましょう。一方、インデックスがこの順序(Surname, FirstName)
で作成された場合は、パフォーマンスが向上します。