問題
そのためのSQL文として、最も適切なものを下記の解答群から選べ。
SQLにおけるunionは2つ以上のSELECT文を結合する場合に使用します。
unionでSELECT句を結合する場合にSELECTの中にある数や型、文字数などが全て同じである必要があります。
・基本的な形
SELECT カラムA FROM テーブルA
UNION
SELECT カラムB FROM テーブルB;
従って、正解は2.となります。
SQLの問題です。基本的な内容になりますので、簡単なデータベース言語は扱えるようにしておいてください。
SQLには3つの言語があります。データ定義言語、データ操作言語、データ制御言語です。定義、制御については少し専門的になりますが、データ操作言語はよく使われるものになります。
以下、簡単に構文の説明をします。
SELECT ○○ FROM △△ は基本的な形になります。△△データベースから○○を選んでくるというものです。
販売単価*販売数量 as 売上高 とありますが、これは、販売数量×販売単価の計算結果を売上高という新しいデータ項目を設定して、そのデータとして表記するという内容になります。
unionは2つの結果をつなげる構文になります。この時に気を付けるのは、全く同じ表記のものをつなげる必要があるということです。
以上の知識を用いて、選択肢を見ていきます。
1は販売実績表Aから新たに定義した売上高項目が販売実績表Bにはないので、つなげることができません。
2はつなげることができ、販売実績表A、Bから同じデータベースを作ってつなげていますので、正しい内容となっています。
3は後半のSELECT文がどこからデータを抽出するかの定義がなされていません。
4はFROM文を無理やり2つのデータベースから取得する記載になっているため、どのデータを取るべきかがわからないため、誤っています。
5も4と同様です。
よって正解は2となります。