SOQL とは
SOQL(Salesforce Object Query Language)は、Salesforce のデータをクエリするために特別に設計されたクエリ言語です。SQL(Structured Query Language)に似ていますが、Salesforce のデータモデルに合わせて調整されています。SOQL を使用すると、Salesforce オブジェクトからデータを取得できます。これには、Account などの標準オブジェクトやユーザーが作成したカスタムオブジェクトが含まれます。
以下は SOQL の主な特徴と概念です:
-
SELECT 文: SOQL クエリでは、指定した Salesforce オブジェクトから取得するフィールドを指定するために SELECT 文が使用されます。例:
SELECT Id, Name FROM Account
-
WHERE 句を使用したフィルタリング: WHERE 句を使用してレコードをフィルタリングできます。例:
SELECT Name FROM Contact WHERE AccountId = '001xx000003DGb2AAG'
-
関連オブジェクトのクエリ: SOQL は関連するオブジェクトのクエリをサポートしています。例:
SELECT Name, (SELECT LastName FROM Contacts) FROM Account
-
集計関数: SOQL では、COUNT、SUM、AVG、MAX、MIN などの集計関数を使用できます。例:
SELECT AVG(Amount) FROM Opportunity WHERE StageName = 'Closed Won'
-
結果のソートおよび制限: ORDER BY を使用して結果をソートし、LIMIT を使用して返されるレコード数を制限できます。
SELECT Name, CloseDate FROM Opportunity ORDER BY CloseDate DESC LIMIT 10
-
日付の形式と関数: SOQL では、DAY_ONLY()、MONTH()、CALENDAR_MONTH()など、日付を操作するための関数が提供されています。例:
SELECT Id, CloseDate FROM Opportunity WHERE CALENDAR_MONTH(CloseDate) = 12
参考
Salesforce Developers