この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

SOSL の構文

SOSL クエリは、必須の FIND 句で始まります。次に任意の句を追加して、オブジェクト種別、項目、データカテゴリなどによってクエリを絞り込むことができます。返される内容を決定することもできます。たとえば、結果の順序を指定したり、返す行の数を指定したりできます。

必須の FIND 句の後には、1 つ以上の任意の句を次の順序で追加できます。

1FIND {SearchQuery} 
2[ IN SearchGroup ]
3[ RETURNING FieldSpec [[ toLabel(fields)] [convertCurrency(Amount)] [FORMAT()]] ]
4[ WITH DivisionFilter ]
5[ WITH DATA CATEGORY DataCategorySpec ]
6[ WITH SNIPPET[(target_length=n)] ]
7[ WITH NETWORK NetworkIdSpec ]
8[ WITH PricebookId ]
9[ WITH METADATA ]
10[ LIMIT n ]
11
12[ UPDATE [TRACKING], [VIEWSTAT] ]

OFFSET n および WHERE conditionExpressionRETURNING FieldSpec 内に含まれます。

メモ

各項目は次のとおりです。

構文 説明
convertCurrency() 省略可能。組織でマルチ通貨が有効になっている場合、通貨項目をユーザの通貨に換算します。
FIND {SearchQuery} 必須。検索するテキスト (単語または語句) を指定します。検索クエリは中括弧で囲みます。

SearchQuery 文字列が 10,000 字を超えると、結果行は返されません。SearchQuery が 4,000 文字を超えると、論理演算子はすべて削除されます。たとえば、4,001 文字の SearchQuery を含むステートメント内の AND 演算子は、デフォルトの OR 演算子になるため、予想よりも多くの結果が返される場合があります。

FORMAT() 省略可能。FIND 句で FORMAT を使用して、標準およびカスタムの数値、日付、時刻、通貨項目にローカライズされた書式を適用できます。FORMAT 関数では別名指定がサポートされます。さらに、クエリに同じ項目が複数回含まれるときは、別名指定が必要です。
IN SearchGroup 省略可能。検索する項目範囲。次のいずれかの値になります。
  • ALL FIELDS
  • NAME FIELDS
  • EMAIL FIELDS
  • PHONE FIELDS
  • SIDEBAR FIELDS
指定されていない場合、デフォルトは ALL FIELDS です。RETURNING FieldSpec 句で、検索するオブジェクトのリストを指定できます。

この句は、記事、ドキュメント、フィードコメント、フィード項目、ファイル、商品、およびソリューションには適用されません。RETURNING 句にこれらのオブジェクトが指定されている場合、検索は特定の項目に制限されず、すべての項目が検索されます。

メモ

LIMIT n 省略可能。テキストクエリで返される行の最大数を 2,000 以下に指定します。指定されていない場合、返される行の最大数である 2,000 がデフォルトです。この制限は、API バージョン 28.0 以降に適用されます。それ以前のバージョンでは最大 200 行までがサポートされます。
OFFSET n 省略可能。クエリ結果に大量のレコードが含まれると予想される場合、SOSL クエリに OFFSET 句を使用して結果を複数ページに表示できます。たとえば、OFFSET を使用して 51 ~ 75 番目のレコードを表示した後、スキップして 301 ~ 350 番目のレコードを表示できます。OFFSET を使用すると、大規模な結果セットを効率よく処理できます。
ORDER BY 省略可能。ORDER BY 句を使用して、返される検���結果の順序を指定します。また、この句を使用して、結果の先頭または最後に空のレコードを表示することもできます。
RETURNING FieldSpec 省略可能。検索結果で返す情報。1 つ以上のオブジェクトのリスト、および各オブジェクト内の 1 つ以上の項目のリスト (省略可能な絞り込み対象の値を含む)。指定されていない場合、検索結果には見つかったすべてのオブジェクトの ID が含まれます。
toLabel(fields) 省略可能。クエリの結果がユーザの言語に翻訳されて返されます。
USING ListView= 1 つの特定のオブジェクトのリストビュー内で検索するために使用される省略可能な句。1 つのリストビューのみを指定できます。ユーザがリストビューに設定した並び替え順に従って、リストビューの最初の 2,000 レコードのみが検索されます。
[ UPDATE [TRACKING | VIEWSTAT][,...] ] ] 省略可能。組織で Salesforce ナレッジを使用する場合、次の処理を行います。
WHERE conditionExpression 省略可能。デフォルトで、オブジェクトに対する SOSL クエリでは、ユーザに表示されているすべての行が取得されます。検索を限定するために、特定の項目値で検索結果を絞り込みます。
WITH DATA CATEGORY DataCategorySpec 省略可能。組織で Salesforce ナレッジの記事または回答を使用する場合、1 つ以上のデータカテゴリに基づいてすべての検索結果を絞り込みます。
WITH DivisionFilter 省略可能。組織でディビジョンを使用する場合、Division 項目の値に基づいてすべての検索結果を絞り込みます。
WITH HIGHLIGHT 省略可能。特定のオブジェクトの検索結果で、検索語に一致する語を強調表示します。
WITH METADATA = MetadataSpec 省略可能。応答でメタデータが返されるかどうかを指定します。デフォルト設定は no であり、メタデータは返されません。
WITH NETWORK NetworkIdSpec 省略可能。検索結果をコミュニティ ID で絞り込みます。
WITH PricebookId 省略可能。1 つの価格表 ID で商品検索結果を絞り込みます。
WITH SNIPPET [(target_length=n)] 省略可能。組織で Salesforce ナレッジ記事を使用する場合、コンテキストスニペットを表示し、検索結果で各記事の検索語を強調表示します。デフォルトでは、各スニペットには最大で約 300 文字が表示されます。これは、標準のブラウザウィンドウでは通常 3 行分のテキストに相当します。対象の長さに別の値 (100 ~ 500 文字) を指定するには、target_length パラメータ (省略可能) を追加します。
WITH SPELL_CORRECTION 省略可能。true に設定すると、スペル修正をサポートする検索のスペル修正が有効になります。false に設定されていると、スペル修正は有効になりません。デフォルト値は true です。

SOSL ステートメントの文字数制限は、組織で定義されている SOQL ステートメントの文字数制限に関連付けられます。デフォルトでは、SOQL クエリおよび SOSL クエリは 20,000 文字を超えることはできません。この最大長を超える SOSL ステートメントでは、API が MALFORMED_SEARCH 例外コードを返します。結果の行は返されません。

メモ