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

Big Object を使用する SOQL

標準の SOQL コマンドのサブセットを使用して、Big Object のインデックスの項目を照会できます。

インデックスクエリを構築するには、インデックスに定義された最初の項目から開始し、欠落が生じないよう最初から最後の項目までクエリに指定します。クエリの項目では = または IN を使用できますが、IN を使用できるのは 1 回のみです。範囲演算子 <><=、または >= はクエリの最後の項目でのみ使用できます。

FirstName IN('Charlie') のように引数が 1 つしかない IN 句を使用した場合は、FirstName='Charlie' のように = を使用した場合と同等です。明確化するために、このケースでは = 形式を使用することをお勧めします。

ヒント

サブクエリはサポートされていません。クエリに複数のステートメントを含めないでください。たとえば、次のクエリはサポートされません。

システム項目 CreatedByIdCreatedDateSystemModstamp をクエリに含めることができます。

クエリ結果の順序を保証するには、ORDER BY 句を使用します。

次のクエリは、テーブル内で LastName__cFirstName__cPhoneNumber__c によってインデックスが定義されていると仮定します。

次のクエリは、インデックスに 3 つすべての項目を指定します。このケースでは、PhoneNumber__c の検索条件で範囲演算子を使用できます。

次のクエリは、インデックスに最初の 2 つの項目のみを指定します。このケースでは、FirstName__c の検索条件で範囲演算子を使用できます。

次のクエリは、インデックスに最初の項目のみを指定します。LastName__c の検索条件で範囲演算子を使用できます。

次のクエリでは、インデックスの最初の項目で IN 演算子を使用しています。

次のクエリは、欠落があるため機能しません。FirstName__c が必要です。

次のクエリも IN 演算子を 2 回使用しているため機能しません。

次のクエリは WHERE 句に 2 つの IN 演算子があるように見えますが、機能します。ただし、2 番目の IN には引数が 1 つしかないため、等号演算子と同等であるために使用できます。

明確化するために、上記の SOQL ステートメントを次のように書き換えることをお勧めします。

Big Object で許可されない SOQL 操作

  • インデックスクエリを構築するときは、クエリ内の最初の項目から最後の項目までの間に欠落が残らないようにしてください。
  • 演算子 !=LIKENOT INEXCLUDESINCLUDES はクエリでは無効です。
  • 集計関数は、どのクエリでも無効です。
  • 結果のリストを取得するには、クエリに Id 項目は使用しないでください。クエリに Id を含めると、空の ID (000000000000000 または 000000000000000AAA) の結果のみが返されます。

    開発者コンソールを使用してリソースからクエリを生成すると、Id 項目が自動的に含まれます。開発者コンソールで Big Object を照会するには、生成されたクエリから Id を削除します。

    メモ