“サッカーチーム”表と“審判”表から、条件を満たす対戦を導出するSQL文のaに入れる字句はどれか。
[条件]
サッカーチーム
|
||||||||
審判
|
[SQL文]
SELECT A.チーム名 出場チーム1, B.チーム名 AS 出場チーム2, C.氏名 AS 審判名
FROM サッカーチーム AS A, サッカーチーム AS B, 審判 AS C
WHERE A.サッカー名 < B.チーム名 AND a
ア | (A.チーム名 <> C.所属チーム名 OR B.チーム名 <> C.所属チーム名) |
イ | C.所属チーム名 NOT IN (A.チーム名, B.チーム名) |
ウ | EXISTS
(SELECT * FROM 審判 AS D WHERE A.チーム名 <> D.所属チーム名 AND B.チーム名 <> D.所属チーム名) |
エ | NOT EXISTS
(SELECT * FROM 審判 AS D WHERE A.チーム名 = D.所属チーム名 AND B.チーム名 = D.所属チーム名) |
答え イ
【解説】
問題文のSQL文からaに入るのは審判の選出の条件になり、問題文の条件に「審判は、所属チームの対戦を担当することはできない」となっているので、審判Cの所属チームが、対戦するチーム1とチーム2でないことになり、これをSQL文にすると
C.所属チーム名 NOT IN (A.チーム名, B.チーム名)
(イ)になります。
【キーワード】
・SQL文