データベース

基本情報技術者試験SQLの `UPDATE 商品 SET 価格 = 価格 * 1.1 WHERE 分類 = '食品'`…

テクノロジ系データベース難易度:easy
SQLの `UPDATE 商品 SET 価格 = 価格 * 1.1 WHERE 分類 = '食品'` を実行したときに起こることとして正しいものはどれか。
分類が食品の行が新規に追加され価格が1.1倍で登録される
分類が食品の行が表から削除される
分類が食品の既存の行の価格が現在値の1.1倍に更新される
全ての行の価格が分類にかかわらず1.1倍に更新される
正解
ウ.分類が食品の既存の行の価格が現在値の1.1倍に更新される

UPDATEは既存行の指定列を更新する操作であり、SET 価格=価格*1.1 で現在の価格を1.1倍にする。WHERE 分類='食品' により対象は食品の行に限られるため、食品の既存行の価格が1.1倍に更新され正しい。

?選択肢ごとの解説

ア ×行を新規追加するのはINSERT文の役割であり、UPDATEは既存行を変更するだけで行数は増えない。
イ ×行を削除するのはDELETE文の役割であり、UPDATEは行を消さず列値を書き換える。
ウ ○UPDATEは既存行の指定列を更新する操作であり、SET 価格=価格*1.1 で現在の価格を1.1倍にする。WHERE 分類='食品' により対象は食品の行に限られるため、食品の既存行の価格が1.1倍に更新され正しい。
エ ×全行を更新するのはWHERE句がない場合であり、本文はWHERE 分類='食品'で対象を食品に限定している。
この問題の「深掘り・誤答の完全解説・覚え方」は、登録すると読めます。

基本情報技術者試験は全4,036問。公開しているのはその一部で、登録すると残りも一問ごとにAI解説つきで解けます。SRS暗記カード・全真模試・弱点診断まで。

登録は1分・クレジットカード不要。無料のまま練習・暗記カード・模試まで使えます。

作成・校閲:ukamiru編集部 · 基本情報技術者試験 過去問 · fe-a3-0246

【基本情報技術者試験】SQLの `UPDATE 商品 SET 価格 = 価格 *…|正解「分類が食品の既存の行の価格が…」|ukamiru 過去問