LinuCレベル1 Version 4.0 102試験の例題と解説
105.3 SQLデータ管理
2つのテーブルを結合するための構文を取り上げます。
テーブル結合を伴うSQLクエリーを実行できることを確認しておきましょう。
■トピックの概要
このトピックの内容は以下の通りです。
<105.3 SQLデータ管理>
重要度 2
<説明>
データベースを照会し、基本的なSQLコマンドを使用してデータを操作できる。
これには、2つのテーブルやサブセレクトの結合を伴うクエリーの実行も含まれる。
<主要な知識範囲>
・基本的なSQLコマンドを使用する
・基本的なデータ操作を実行する
<重要なファイル、用語、ユーティリティ>
・insert
・update
・select
・delete
・from
・where
・group by
・order by
・join
■例題
データベースに登録されているデータから仕入一覧表を作成します。
下記の空欄に入る構文を選択してください。
[テーブル仕様]
1) purchase
id, date_time, product_id, number
2) product
id, product_name, price
[仕入一覧形式]
date_time, product_name, number
[SQLクエリ]
SELECT purchase.date_time, product.product_name, purchase.number
FROM purchase ________ product ON purchase.product_id = product.id;
1. AND
2. FROM
3. JOIN
4. WHERE
※この例題は実際の試験問題とは異なります。
解答と解説
答えは「3. JOIN」です。
テーブルの結合とは、異なる2つのテーブルからそれぞれデータを検索し、まとめて出力することを言います。
本例題の場合、purchaseテーブルからdate_timeとnumberを、productテーブルからproduct_nameを検索して、1つの結果にまとめて表示します。
SELECT purchase.date_time, product.product_name, purchase.number
FROM purchase JOIN product ON purchase.product_id = product.id;
JOIN構文の書式は下記のようになります。
SELECT column1, column2, ... FROM table1 JOIN table2 ON 結合条件;
それぞれの選択肢について解説します。
1. AND
誤っています。
ANDは2つの条件を組み合わせる時に使用する構文です。
2. FROM
誤っています。
FROMは検索対象のテーブルを指定する時に使用する構文です。
テーブルの結合を行なう時には使用しません。
3. JOIN
正解です。
4. WHERE
誤っています。
検索の条件を指定する時に使用する構文です。
テーブル結合の条件はWHEREではなくONを使用します。
テーブル結合を行なう場合のSELECT構文を覚えておきましょう。
■例題作成者