データベース
顧客テーブル、注文テーブル、商品テーブルを結合して「顧客名」「注文日」「商品名」を取得するSQL文として正しいものはどれか。(顧客.id=注文.顧客id, 注文.商品id=商品.id)
ア.SELECT 顧客名, 注文日, 商品名 FROM 顧客, 注文, 商品
イ.SELECT 顧客名, 注文日, 商品名 FROM 顧客 JOIN 注文 JOIN 商品
ウ.SELECT 顧客名, 注文日, 商品名 FROM 顧客 JOIN 注文 ON 顧客.id = 注文.顧客id JOIN 商品 ON 注文.商品id = 商品.id正解
エ.SELECT 顧客名, 注文日, 商品名 FROM 顧客 INNER JOIN 注文 WHERE 顧客.id = 注文.顧客id AND 注文.商品id = 商品.id
解説
3テーブルJOINは「3つのパズルピースをつなぐ」作業。それぞれの接合部(ON句)を正確に指定することが重要。
なぜ ウ が正解か
JOINにはON句で結合条件を指定する必要がある。顧客 JOIN 注文 ON 顧客.id = 注文.顧客id で最初の結合、さらに JOIN 商品 ON 注文.商品id = 商品.id で2つ目の結合を連鎖させる正しい形。
出典: AI生成問題(学習用)