刪除 (SQL)

SQL裡,DELETE語句用於從表中刪除一個或多個資料。使用它需要定義一個子集作為條件,否則表中的所有資料都會被刪除。

用法

DELETE 語句的一半語法為:

DELETE FROM 表名 [WHERE 條件]

該語句能夠使表中所有滿足WHERE子句條件的元組都會被刪除。如果缺少 WHERE 子句,則表中所有的元組都會被刪除。

執行一條 DELETE 語法能夠觸發觸發器而在其他表中執行刪除操作。例如,有相聯絡的兩個表,如果作為被參照關係的表中的元組被刪除,則作為參照關係的表也會被刪除,以保證關係的參照完整性

範例

  • 從表 pies中刪除flavorLemon Meringue的元組:
DELETE FROM pies WHERE flavor='Lemon Meringue';
  • 從表trees中刪除height低於80的元組.
DELETE FROM trees WHERE height < 80;
  • 刪除表mytable中所有的元組:
DELETE FROM mytable;
  • 刪除表 mytable中符合子查詢結果的元組:
DELETE FROM mytable WHERE id IN (SELECT id FROM mytable2)

參考