基本情報技術者試験 - 令和8年6月修了 - 問20
| ア | 表Rと表Sがソートされていない。 |
|---|---|
| イ | 表Rと表Sに重複する行が存在する。 |
| ウ | 表Rと表Sに列値がNULLの行が存在する。 |
| エ | 表Rと表Sの列数が一致していない。 |
答え : エ
分野 : テクノロジ系 › 技術要素 › データベース › データ操作
解説 :
「UNION句」は,2つのSELECT結果を縦に結合する演算です。結合するには両方の表の列数が一致している必要があります。列数が違うとエラーになります。
「ア」は,UNIONの実行自体には影響しません。ソートはORDER BY句で別途指定するものであり,UNION自体の前提条件ではありません。「イ」は,むしろUNIONが自動的に重複を除去してくれるため,エラーの原因にはなりません。重複を残したい場合はUNION ALLを使います。「ウ」も,UNIONの実行を妨げる要因ではありません。NULLを含む行も通常通り結合対象になります。列数の一致という構造的な条件だけがエラーの原因になる点を押さえておきましょう。
分野 : テクノロジ系 › 技術要素 › データベース › データ操作
解説 :
「UNION句」は,2つのSELECT結果を縦に結合する演算です。結合するには両方の表の列数が一致している必要があります。列数が違うとエラーになります。
「ア」は,UNIONの実行自体には影響しません。ソートはORDER BY句で別途指定するものであり,UNION自体の前提条件ではありません。「イ」は,むしろUNIONが自動的に重複を除去してくれるため,エラーの原因にはなりません。重複を残したい場合はUNION ALLを使います。「ウ」も,UNIONの実行を妨げる要因ではありません。NULLを含む行も通常通り結合対象になります。列数の一致という構造的な条件だけがエラーの原因になる点を押さえておきましょう。