DOKK / manpages / debian 10 / manpages-zh / delete.7.zh_TW
DELETE(7) SQL Commands DELETE(7)

DELETE - 刪除一個表中的行

DELETE FROM [ ONLY ] table [ WHERE condition ]

DELETE 從指明的表裏刪除滿足 WHERE 子句的行。 如果 WHERE 子句不存在, 效果是刪除表中所有行。結果是一個有效的空表。

Tip: 提示: TRUNCATE [truncate(7)] 是一個 PostgreSQL 擴展, 它提供一個更快的從表中刪除所有行的機制。


缺省時 DELETE 將刪除所聲明的表和所有它的子表的記錄。 如果你希望只更新提到的表,你應該使用 ONLY 子句。


要對錶進行刪除,你必須對它有 DELETE 權限,同樣也必須有 SELECT 的權限,這樣才能對符合 condition 的值進行讀取操作。


一個現存表的名字(可以有模式修飾)。

一個返回 boolean 類型值的值表達式,它判斷哪些行需要被刪除。


成功時,DELETE 命令返回形如

DELETE count


的標籤。 count 是被刪除的行數。 如果 count 爲 0,沒有行匹配 condition (這個不認爲是錯誤)。


刪除所有電影(films)但不刪除音樂(musicals):

DELETE FROM films WHERE kind <> 'Musical';


清空表 films:

DELETE FROM films;


這條命令遵循 SQL 標準。

譯者

Postgresql 中文網站 何偉平 <laser@pgsqldb.org>

本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh

2003-11-02 SQL - Language Statements