こんにちは、にいるです。
Savepoオリジナルの開発初心者向けプログラム「Sink it」です。
今回で第12回目、題材はクエリ言語の「SOQL集計関数」です。
この記事は「12.SOQL集計関数を使ってみよう」の解説と解答です。
・【ヘルプ】条件式の構文 (WHERE 句)
・【ヘルプ】日付形式と日付リテラル
1.SOQLのWHERE句とは
SOQLはWHERE句を使用すれば、取得するレコードにフィルターをかけられます。
今日作成された商談の場合は、作成日を指定します。
1 |
SELECT Id FROM Opportunity WHERE CreatedDate = Today |
こんな感じでレコード検索に条件をつけることがでkます。
2.解答・解説
解答
解答です。
すべて開発者コンソールのQuery Editorでそのまま実行できます。
1 2 3 4 5 6 7 8 9 10 11 |
// ①名前に[united]が含まれている取引先 SELECT Name FROM Account WHERE Name Like '%united%' // ②先月作成された取引先 SELECT Name,CreatedDate FROM Account WHERE CreatedDate = LAST_MONTH // ③メールアドレスを持っている取引先責任者 SELECT Name,Email FROM Contact WHERE Email != NULL // ④完了した商談 SELECT Name FROM Opportunity WHERE StageName ='Closed Won' |
■デバッグ
①名前に[united]が含まれている取引先
②先月作成された取引先
③メールアドレスを持っている取引先責任者
④完了した商談
解説
難易度的に④→②,③→①かなと思います。。
①のあいまい検索はLIKEにワイルドカードを使用する必要があるので、ちょっと難しかったかもしれません。
及第点としては②③④が解ければ問題ないと思います。
WHERE句で複数の条件を指定する場合は、ANDで連結します。
例えば、フェーズが完了かつ、金額が10,000円以上の商談であれば下記のように書きます。
1 |
SELECT Name,Amount FROM Opportunity WHERE StageName ='Closed Won' AND Amount > 10000 |
複雑な条件の場合はANDを使用することも覚えておきましょう。
3.まとめ
いかがでしたでしょうか。
SOQLは開発者だけのスキルではないので、運用保守やアドミニストレーターの方も絶対に覚えておいた方がいいです。
レコード検索するのも便利ですし、データローダでも使用すると思うので。
皆さんもぜひ色々と試してみてください。
他にも色々と標準機能やSalesforce機能について紹介していますので、ご覧ください。
ではでは!