DP-900Azure のリレーショナル データMEDIUM単一選択

ある受発注システムのデータベース担当者が、以下の SQL 文を実行した。「DELETE FROM orders WHERE order_date < '2020-01-01'」この SQL 文の説明として正しいものはどれか。

  1. A. orders テーブルの order_date カラムを削除する DDL 文である
  2. B. 2020年1月1日より前の注文日を持つ orders テーブルの行データを削除する DML 文である
  3. C. 2020年1月1日より前の注文日を持つ行を非表示にするが、物理削除は行わない
  4. D. orders テーブルそのものを削除する DDL 文である
解答と解説を見る

正解: B

DELETE FROM テーブル名 WHERE 条件 は DML(データ操作言語)の DELETE 文であり、条件を満たすテーブル内の行データを物理的に削除する。この場合、orders テーブルから order_date が 2020年1月1日より前のレコードが完全に削除される。テーブルそのものを削除するのは DDL の DROP TABLE 文である。DELETE は物理削除であり、非表示や論理削除ではない(論理削除はフラグカラムを UPDATE する別の設計手法)。カラムを削除するのは DDL の ALTER TABLE ... DROP COLUMN 文である。

▸ この試験を本気で演習する(全150問・無料)