問題
26INTERSECT演算子で積集合を求めよう
INTERSECTは「交わる」という意味を持つ英単語です。 その意味の通り、INTERSECTは2つの検索結果で重複したものを指す演算子です。 つまり2つのSELECT文に共通する行を集めた集合のことです。
SQLの問題に挑戦しよう!
問題
「INTERSECT演算子で積集合を求めよう」
INTERSECT演算子を使って「家計簿」テーブルと「家計簿_過去分」テーブルの重複する費目、収入、支出のデータを表示させて下さい。
期待する画面を参考に命令文を書いていきましょう。
期待する画面
解答と解説(INTERSECT演算子で積集合を求めよう)
解説
※ご登録後トークルーム下部にあるメニュー内
「無料問題集※解答付き」を押すと
解答閲覧用URLが届きます
共通するデータを集めた積集合を表示させるにはINTERSECT演算子を使用します。
構文はUNION、EXCEPTと同様に以下のように書いていきます。
SELECT 列名 FROM テーブル名①
INTERSECT
SELECT 列名 FROM テーブル名②
INTERSECTを使用する場合、UNION演算子と同様にテーブルの順番が変わっても影響はありません。
今回はどちらのテーブルにも共通して存在する4つの費目が積集合として表示されればOKです。
補足
ここまでで登場したUNION、EXCEPT、INTERSECT
3つの集合演算子はテーブルが複数に分かれた際に非常に役立ちます。
3つの異なる特徴をうまく取り扱う事で、効率よくデータを表示することができるので、この3つの集合演算子をしっかり覚えておきましょう。