LoginSignup
5
2

More than 5 years have passed since last update.

選択リスト(複数)で使えるINCLUDES句

Posted at

選択リスト(複数)とは

Salesforceのオブジェクト項目に選択リスト(複数)というデータ型があります。
タグのように複数の属性をセットする場面で利用できる便利なデータ型です。
標準SQLや通常のDBMSの実装には無さそうな INCLUDES句が便利だったのでメモします。

利用ケース

たとえば下記のような利用ケースが考えられます。

取引先責任者の項目として 「関心のある業種」を設定
選択肢として、{メーカー, 商社, 金融, 小売, サービス}を設定

データとしては下記のようになります。

Name Tag__c
鈴木太郎 メーカー;商社
田中二郎 商社;小売
高橋花子 金融;小売;サービス
木村愛子 金融;商社

利用ケースとINCLUDES句使用例

この情報を利用するケースとしては、「"小売"に関心のある人全員を抽出する」等が考えられます。
SOQLでは INCLUDES句を利用し、下記のように記述することで実現できます。

"小売"タグが設定されているデータを抽出

SELECT Name, Tag__c FROM Contact
 WHERE Tag__c INCLUDES ('小売')

結果

Name Tag__c
田中二郎 商社;小売
高橋花子 金融;小売;サービス

複数条件(or)

IN句のように複数条件を記述できます。

"小売"または"メーカー"いずれかのタグが設定されているデータを抽出

SELECT Name, Tag__c FROM Contact
 WHERE Tag__c INCLUDES ('小売', 'メーカー')

結果

Name Tag__c
鈴木太郎 メーカー;商社
田中二郎 商社;小売
高橋花子 金融;小売;サービス

複数属性を持つデータを抽出

複数の属性を持つデータを抽出する場合、セミコロンで指定します。

"商社"と"金融"両方のタグが設定されているデータを抽出

 SELECT Name, Tag__c FROM Contact
 WHERE Tag__c INCLUDES ('商社;金融')

結果

Name Tag__c
木村愛子 金融;商社
5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2