SOQLの基礎

概要 本記事では、SOQLの基礎的な事項を実行のサンプルコードをベースにして整理しております。まずSOQLとは、Salesforce Object Query Languageの略であり、データベース(オブジェクト)から必要となるデータを取得する際に利用するものとなります。一般的なSQLとの違いは、いくつかありますが一つはSQLでは複数のテーブルを自由に条件指定することで結合してデータを抽出することができますが、SOQLではオブジェクト同士にリレーションがある場合にのみ結合することができます。また、SQLの’UPDATE’や’DELETE’のようなDMLはSOQLでは使用できないので、Apexで実行する必要があります。 Apexの中でSOQLを実行する2つの方法(静的SOQL、動的SOQL)から紹介します。 静的SOQL(インラインSOQL) Apexでは[ ]句によって、静的なSOQLを記載することができます。[ ]句の中では、 下記のようにバインド変数を使用することで条件を指定できます。 動的SOQL Apexの処理の中で実行するSOQLを動的に編集することができます。実行するSOQL文をStringでDatabase.queryに渡すことができます。SOQLの中で一つのレコードの取得に限定しているのであれば、sObjectで受けることができます。 複数件以上のレコードを取得するのであれば、sObjectのリストで受けます。 サンプルは下記の通りとなります。 また、バインド変数を使用しない例では下記のようにSOQL文を組み立てることもできます。 SOQLの構文(演算子) SOQLで使用することができる各構文(演算子)を記載していきます。 =(等号) >,<,>=,<=(不等号)

Continue reading