SOQL とは

SOQL(Salesforce Object Query Language)は、Salesforce のデータをクエリするために特別に設計されたクエリ言語です。SQL(Structured Query Language)に似ていますが、Salesforce のデータモデルに合わせて調整されています。SOQL を使用すると、Salesforce オブジェクトからデータを取得できます。これには、Account などの標準オブジェクトやユーザーが作成したカスタムオブジェクトが含まれます。

以下は SOQL の主な特徴と概念です:

  1. SELECT 文: SOQL クエリでは、指定した Salesforce オブジェクトから取得するフィールドを指定するために SELECT 文が使用されます。例:

    SELECT Id, Name FROM Account
    
  2. WHERE 句を使用したフィルタリング: WHERE 句を使用してレコードをフィルタリングできます。例:

    SELECT Name FROM Contact WHERE AccountId = '001xx000003DGb2AAG'
    
  3. 関連オブジェクトのクエリ: SOQL は関連するオブジェクトのクエリをサポートしています。例:

    SELECT Name, (SELECT LastName FROM Contacts) FROM Account
    
  4. 集計関数: SOQL では、COUNT、SUM、AVG、MAX、MIN などの集計関数を使用できます。例:

    SELECT AVG(Amount) FROM Opportunity WHERE StageName = 'Closed Won'
    
  5. 結果のソートおよび制限: ORDER BY を使用して結果をソートし、LIMIT を使用して返されるレコード数を制限できます。

    SELECT Name, CloseDate FROM Opportunity ORDER BY CloseDate DESC LIMIT 10
    
  6. 日付の形式と関数: SOQL では、DAY_ONLY()、MONTH()、CALENDAR_MONTH()など、日付を操作するための関数が提供されています。例:

    SELECT Id, CloseDate FROM Opportunity WHERE CALENDAR_MONTH(CloseDate) = 12
    

参考