通常、SQL Anywhere はインデックスを使用して探索条件を評価できます。インデックスを使用することで、オプティマイザーはデータへのアクセスをスピードアップし、ベーステーブルから読み込んで処理する情報量を減らします。たとえば、クエリに WHERE
column-name=value
という探索条件があり、カラムにインデックスが存在する場合、インデックススキャンを使って、探索条件を満たすテーブルのローだけを読み込むことができます。テーブルをジョインする場合にインデックスがあれば、パフォーマンスを大幅に向上させることもできます。
クエリを実行するとき、SQL Anywhere は各テーブルへのアクセス方法を選択します。データベースサーバーが適切なインデックスを見つけられないときは、テーブルを順にスキャンしなければならず、時間を要します。
たとえば、大規模なデータベースから複数の従業員を検索する必要があるのに、姓か名前のどちらかしかわからないとします。インデックスがない場合、SQL Anywhere はテーブル全体をスキャンします。しかし、姓が先に入力されているインデックスと名前が先に入力されているインデックスの 2 つのインデックスが作成されていれば、SQL Anywhere はこの 2 つのインデックスを先にスキャンするので、一般的にはより速く情報を返すことができます。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |