INNER JOINの理解
メニューを表示するにはスワイプしてください
JOIN の理解は不可欠です。なぜなら、実際のデータは単一のテーブルに保存されることはほとんどないからです。ビジネス上の質問に答えたり、レポートを作成したり、アプリケーションを動かしたりするためには、複数のテーブルから情報を組み合わせる必要があります。注文の追跡、ユーザー活動の分析、ダッシュボードの構築など、JOIN を習得することで関連データを効率的に結び付け、データベースからより深い洞察を得ることができます。
2つのテーブルの行を結合し、両方のテーブルに一致するレコードのみを表示したい場合、INNER JOIN を使用します。この結合タイプは SQL で最も一般的に使われており、特に関連するデータセット間の関係を分析したいときに利用されます。例えば、実際に注文をした顧客のリスト(注文を一度もしていない顧客を除外)を取得したい場合、INNER JOIN が最適です。これは、売上レポートの作成、アクティブユーザーの抽出、取引とその詳細の照合など、多くの実際の場面で役立ちます。
123456789SELECT customers.name AS customer_name, orders.amount AS order_amount FROM customers INNER JOIN orders ON customers.customer_id = orders.customer_id;
このクエリは、INNER JOIN が customers テーブルと orders テーブルの情報をどのように結合するかを示しています。クエリは name テーブルの customers 列と、amount テーブルの orders 列を選択します。結合条件は ON 句で指定されており、customers.customer_id = orders.customer_id となっています。つまり、顧客が対応する注文を持っている(customer_id が両方のテーブルに存在する)行のみが結果に含まれます。注文をしていない顧客(サンプルデータでは Charlie Lee と Eve Adams)は出力に表示されません。同様に、有効な顧客に紐づいていない注文も除外されますが、提供されたデータではすべての注文が既存の顧客を参照しています。
1234567891011SELECT orders.order_id, products.product_name FROM orders INNER JOIN order_products ON orders.order_id = order_products.order_id INNER JOIN products ON order_products.product_id = products.product_id;
1. INNER JOIN は、両方のテーブルに一致するレコードがない場合、何を返しますか?
2. INNER JOINで2つのテーブルを結合する際に、結合に使用するカラムを指定する句はどれですか?
3. customersとordersをcustomer_idで結合するINNER JOINクエリの空欄を埋めてください。
フィードバックありがとうございます!
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください