1

一般的なクエリの 1 つに "where blobCol is null" があるデータベースがありますが、これはパフォーマンスが低下していると思います (完全なテーブル スキャンのように)。blobCol のコンテンツにインデックスを付ける必要はありません。

これを改善するインデックスは何ですか? 列だけでなく、式 (blobCol が null ではない) に基づいてインデックスを作成できますか?

4

2 に答える 2

2

はい、ほとんどの DBMS でサポートされています。たとえば、PostgreSQLではサポートされています。

CREATE INDEX notNullblob ON myTable (blobCol is not NULL);

ただし、SQL Serverでできる最善の方法は、たとえば、blobがnullの場合は1、それ以外の場合は0を含む計算列を作成し、それに対してインデックスを作成することです。

于 2008-11-10T23:44:06.150 に答える
1

一部のデータベースでは式のインデックスを使用できますが、単純なインデックスを使用すると、クエリの実行時間が大幅に短縮されます。

于 2008-11-10T23:43:02.313 に答える