読み込み中...
先行公開中:2026年11月から一部が有料になります(無料プランはそのまま使えます)。詳しく ›
読み込み中...
ある電子商取引サイトでは,会員の属性を柔軟に変更できるように,“会員項目”表で管理することにした。“会員項目”表に対し,次の条件でSQL文を実行して結果を得る場合,SQL文のaに入れる字句はどれか。ここで,実線の下線は主キーを,NULLは値がないことを表す。
〔条件〕
(1) 同一“会員番号”をもつ複数の行によって,1人の会員の属性を表す。
(2) 新規に追加する行の行番号は,最後に追加された行の行番号に1を加えた値とする。
(3) 同一“会員番号”で同一“項目名”の行が複数ある場合,より大きい行番号の項目値を採用する。
〔SQL文〕
SELECT 会員番号,
[a] (CASE WHEN 項目名='会員名' THEN 項目値 END) AS 会員名,
[a] (CASE WHEN 項目名='最終購入年月日' THEN 項目値 END)
AS 最終購入年月日
FROM ( SELECT 会員番号, 項目名, 項目値 FROM 会員項目
WHERE 行番号 IN ( SELECT [a] (行番号) FROM 会員項目
GROUP BY 会員番号, 項目名 )
) T
GROUP BY 会員番号
ORDER BY 会員番号
出典:データベーススペシャリスト試験 午前Ⅱ