【Sink it】14.リレーションクエリを使ってみよう(子→親)(解答)

スポンサーリンク
SOQLのリレーションクエリ Apex

こんにちは、にいるです。

Savepoオリジナルの開発初心者向けプログラム「Sink it」です。
今回で第14回目、題材はクエリ言語の「SOQL」です。

この記事は「14.リレーションクエリ(子→親)を使ってみよう」の解説と解答です。

【ヘルプ】リレーションクエリの使用

1.リレーションクエリ(子→親)とは

基本的な構文です。

上記のように参照項目を持っていれば、FROMに子オブジェクトを指定しても関連するデータが取得できるクエリです。

標準オブジェクトでは、取引先はいろいろなオブジェクトの親になっています。
取引先責任者、商談やケースは取引先の子です。

リレーションクエリをうまく使いこなすには、各オブジェクトの関係も把握する必要があります。
最初は親か子かわかりにくいと思いますが、子は親を見ている(子オブジェクトに親を指定する参照項目や主従項目が存在している)というふうに覚えておきましょう。

2.解答・解説

解答

解答です。

■デバッグ

①完了した商談を取引先名と一緒に取得
 
SOQLのリレーションクエリ
 
②取引先の業種が「銀行」の取引先責任者を取得
 
SOQLのリレーションクエリ
 

解説

参照項目、主従関係を持っているオブジェクトは子、従側になります。
この場合は、ほぼ1対多の関係だと考えてください。

なので、[SELECT 参照項目,参照項目.Name FROM 子オブジェクト]というように、レコード上に参照項目が値がちゃんと入力してあれば、その項目の中を見に行って関連データの取得が可能になります。

「.」のあとに関連オブジェクトの項目を指定すれば他の項目も参照できますし、WHERE句で使用することもできます。

親から子は別方法になるので、オブジェクト構造を理解して区別できるようにしましょう。

3.まとめ

いかがでしたでしょうか。

リレーションクエリは関連データをそのまま一回のSOQLで取得できるので便利です。
リレーションがあるなら一度で取得しましょう!

皆さんもぜひ色々と試してみてください。
他にも色々と標準機能やSalesforce機能について紹介していますので、ご覧ください。

ではでは!

Salesforce 機能別 まとめページ

コメント

タイトルとURLをコピーしました