Salesforce DISTINCT SQL概要

Salesforce DISTINCT SQLは、Salesforce内のデータベース上のテーブル内レコードで重複したデータを一つにまとめる便利な構文になります。
他にも重複したレコードを一つにまとめる構文は存在しますが、DISTINCT SQLは簡単な構文で重複したレコードを一つにまとめることが出来ます。下記に構文の記載方法を説明します。
DISTINCT SQLの基本構文を記載します。SQLを使ったことのない人は、下記にSQL入門のURLを記載しますので参考にしてください。
基本構文
SELECT DISTINCT 列名,列名 FROM テーブル名
SELECTからFROMまでの処理テーブル名の中の指定した列名に対し、DISTINCTを行うといった処理になります。上記を実行することにより、重複したレコードを一つにまとめます。
データベース上で使用するSQLについて
SQL文は、データベースを使うWebサービスにとっては、必須となっています。
SQL文を使うことによりデータベースにデータを格納したり格納したデータを呼び出し画面に表示したりするなど役割は様々です。
昨今では、データベースを使っていないWebサービスはほとんど存在しません。Webサービス上で処理されたデータをデータベースに格納することで、いつでも格納した情報を引き出すことが出来ます。
- SELECT
- FROM
- 全カラムからデータ取得
- WHERE
SELECTについて
SELECTは、どのカラムからデータを取得するか指定するSQL関数になります。
SELECTの後ろにカラム名を指定することで、指定したカラムからデータを取得することが出来ます。その際に便利な関数があります。
カラム名 as 変更したい名前
上記を実行することによりカラム名を日本語表記や自分がわかりやすい名前に変更することが出来ます。下記に変更後の注意点を記載します。
asを使用すると変更以降で変更したカラムを使用する際に、変更後の名前でなければエラーになります。変更といっても物理的に変更するのではなく、論理的に変更します。カラム名自体に変更はされていません。
asを使用するとカラム名がわかりやすくなるメリットがあるので、ソートしたりカラムの指定がやりやすくなります。
SELECTをSalesforceで使用すると社内システム上のデータベースのテーブル内のカラム名から必要データを取得することが出来ます。必要データを取得することで、データを出力し確認できます。
上記処理を行うためには、カラム名を選択するために条件の指定やレコードのソートを行う必要があります。
レコードのソートを行うとレコードの順番が保証されるので、データの特定も行いやすくなります。
FROMについて
FROMは、どのテーブルからデータの取得を行うかを決める関数になります。上記で説明したSELECTだけでは、どのテーブルからデータを取得するかわからないためエラーになります。SELECTとFROMを使った構文は下記になります。
SELECT カラム名 FROM テーブル名
上記がカラム名からデータを取得する基本になります。
SELECTとFROMを使用することで初めてデータを取得することが出来ます。
全カラムからデータ取得について
上記でデータの基本取得方法を記載しました。その他にも全カラムからデータを取得する方法があります。下記に基本構文を記載します。
SELECT * FROM テーブル名
「*」は全カラムからとなります。
ですが、全データを取得するといった処理はレコードの数が増えるにつれて動作が特に重くなります。なので本来使用することはあまりありません。
WHEREについて
WHEREは、条件の指定を行う関数になります。SELECTとFROMでテーブル内のデータを取得する際に条件に合ったデータを出力したいといったことがあります。
その際にWHEREで条件を指定することで条件に合ったデータを取得できます。
条件は条件分岐を指定できます。条件分岐を指定することにより、取得したいデータを絞り込むことが出来ます。下記に詳細を記載します。
WHEREの条件指定でカラム内のデータに、特定の文字列が含まれている場合にどうするかの指定ができる関数があります。下記に構文を記載します。
カラム名.in(””指定したいデータ””)
上記を指定することで、指定したカラム内に特定の文字列がある場合に取得するといった処理ができます。in内は、文字列だけでなく数値も指定することが出来ます。中で数式も取り扱うこともでき、計算式を入れることも可能です。
最後に
Salesforce DISTINCT SQLと基本的なSQLについて説明しました。Salesforceに限らず、データベースに会社の大切な情報を保存する際にはSQLを発行します。SQLを発行することでデータベースの指定したテーブルにデータを格納できます。
SQL発行の際には、誤った使い方をするとデータを格納し続け、データベースが落ちるといったことも起こり得るので、使用の際には注意が必要です。]]>
この記事の監修者・著者
-
株式会社オープンアップITエンジニア
-
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞