LinuCレベル1 Version 4.0 102試験の例題と解説

105.3 SQLデータ管理

LinuC 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つのテーブルを結合する場合、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構文を覚えておきましょう。

■例題作成者

ページトップへ