サブクエリとリストを使ったフィルタリング
この練習では、ホームで一度も試合を行ったことのないチームのリストを作成します。サブクエリを使って、フィルタリングなしの match テーブルから、hometeam_ID の一意の値のリストを作成し、team テーブルの team_api_ID 列から除外します。
単一の値(スカラー)を返すサブクエリを使ってフィルタリングできるだけでなく、サブクエリで値のリストを作成し、その結果を使って条件フィルタリングを行うことも可能です。このタイプのサブクエリは、メインクエリに対して1 列の値リストを作成します。リストの値がメインクエリのテーブル内の列と一致していれば、別テーブルの値のリストであっても、JOIN を使わずにフィルタリングできます。
この演習はコースの一部です
SQL のデータ操作
演習の手順
WHERE句内で、matchテーブルからすべてのhometeam_idの一意の値を取得するサブクエリを作成してください。teamテーブルから、team_long_nameとteam_short_nameを選択してください。メインクエリの結果から、サブクエリで取得した値をすべて、除外してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
SELECT
-- Select the team long and short names
___,
___
FROM ___
-- Exclude all values from the subquery
WHERE team_api_id ___ ___
(___ DISTINCT ___ FROM ___);