SOSL の制限
検索エンジンは、検索プロセスの各フェーズで分析するレコード数を制限します。この制限のために、一致するレコードがユーザの結果から除外される場合があります。
次の図は、検索エンジンがどのように SOSL 検索を処理し、結果を制限しているかを示しています。各色はオブジェクトを表し、各雨滴はレコードを表します。数字は次のフローに対応しています。
- 検索エンジンは、最大 2,000 件のレコード内で検索語との一致を探します (この制限は API バージョン 28.0 以降に��用されます)。
- SOSL は、特定のオブジェクトまたは状況に異なる制限を適用します。単一オブジェクトを検索する場合、完全なレコード制限が適用されます。複数のオブジェクトでのグローバル検索の場合、各オブジェクトには合計 2,000 レコードの制限が個別に適用されます。
- システム管理者 (「すべてのデータの参照」権限を持つユーザ) には、返された結果セットのすべてが表示されます。
- その他すべてのユーザには、SOSL によってユーザ権限検索条件が適用されます。個々のユーザには、参照権限を持つレコードのみが表示されます。結果セットと順序は検索を実行するユーザによって異なり、インデックスからのレコードの追加または削除に応じて 1 日の間に変化する可能性があります。

例
Acme, Inc. の営業担当役員である Joe Smith が、「Industrial Computing」の取引先レコードを検索します。検索バーに「Industrial」と入力します。「Industrial」という検索語に一致するレコードは多数あるため、結果に制限が適用されます。残念ながら、Joe が探しているレコードは制限の枠内にはありませんでした。この概念は、画像ではじょうごの外側にある 1 つの雨滴で示されています。
Joe はグローバル検索を使用したため、各オブジェクト種別に 2,000 件のレコード制限が適用されます。この図では、5 つの青い雨滴がじょうごに入っていますが、そのうち 3 つのみが次のフェーズに進んでいます。検索を 1 つのオブジェクトのみに絞り込んでいれば、制限はそのオブジェクトにのみ適用され、探しているレコードが返される確率は高くなります。
Joe は「Industrial Computing San Francisco」と入力して検索を再試行します。検索語がより具体的になったため、同じ制限が適用される場合でも検索エンジンはより適切な一致を返すことができます。このシナリオでは、Joe が探しているレコードは、じょうごの最上部から Joe の検索結果ページまで通過している青い雨滴のうちの 1 つです。
検索の結果過剰と切り捨てを回避するには、次のベストプラクティスに従ってください。
- より具体的な検索語を使用するようにユーザに促す
- 検索は、ユーザが一意の検索語を入力したときに最適に機能します。「Acme Company San Francisco」は、「Acme」よりも関連性の高い結果が返されます。
- 検索範囲を絞り込むようにユーザに促す
- ユーザが検索結果ページを表示しているときに、検索範囲を目的のレコードのオブジェクト種別に制限すると、検索が再実行されます。単一オブジェクトに対して完全な結果セットの制限が適用されるため、より多くの結果が表示される可能性があります。
- リストビューを作成する
- 繰り返し検索する取引先責任者、ドキュメント、その他のオブジェクトレコードの特定のセットを表示するリストビューを作成します。リストビューにはレコード数の制限はなく、結果セットの順序付けがあります。共有ルールも適用されます。