400 万件のレコードを含むテーブルがあり、特定の頻繁に使用されるユース ケースでは、400 万件のうち約 10,000 件の特定の salesforce userType が「標準」のレコードのみに関心があります。存在する可能性のある他のユーザー タイプは、'PowerPartner'、'CSPLitePortal'、'CustomerSuccess'、'PowerCustomerSuccess'、'CsnOnly' です。
したがって、このユースケースでは、ドキュメントに従って、部分インデックスを作成する方がよいと考えました。
したがって、この部分インデックスを作成して、usertype が「Standard」のレコードのクエリを高速化し、Web からのリクエストがタイムアウトになるのを防ぐことを計画しています。
CREATE INDEX user_type_idx ON user_table(userType)
WHERE userType NOT IN
('PowerPartner', 'CSPLitePortal', 'CustomerSuccess', 'PowerCustomerSuccess', 'CsnOnly');
ルックアップ クエリは次のようになります。
select * from user_table where userType='Standard';
これが部分インデックスを作成する正しい方法であるかどうか確認していただけますか? それは大いに役立つでしょう。