PostgreSQL-DELETEクエリ
PostgreSQL DELETEクエリは、テーブルから既存のレコードを削除するために使用されます。WHERE句をDELETEクエリとともに使用して、選択した行を削除できます。そうしないと、すべてのレコードが削除されます。
構文
WHERE句を使用したDELETEクエリの基本的な構文は次のとおりです。
DELETE FROM table_name
WHERE [condition];
ANDまたはOR演算子を使用して、N個の条件を組み合わせることができます。
例
次のようなレコードを持つテーブルCOMPANYについて考えてみます。
# select * from COMPANY;
id | name | age | address | salary
----+-------+-----+-----------+--------
1 | Paul | 32 | California| 20000
2 | Allen | 25 | Texas | 15000
3 | Teddy | 23 | Norway | 20000
4 | Mark | 25 | Rich-Mond | 65000
5 | David | 27 | Texas | 85000
6 | Kim | 22 | South-Hall| 45000
7 | James | 24 | Houston | 10000
(7 rows)
以下は、IDが7 −の顧客を削除する例です。
testdb=# DELETE FROM COMPANY WHERE ID = 2;
これで、COMPANYテーブルには次のレコードが含まれます-
id | name | age | address | salary
----+-------+-----+-------------+--------
1 | Paul | 32 | California | 20000
3 | Teddy | 23 | Norway | 20000
4 | Mark | 25 | Rich-Mond | 65000
5 | David | 27 | Texas | 85000
6 | Kim | 22 | South-Hall | 45000
7 | James | 24 | Houston | 10000
(6 rows)
COMPANYテーブルからすべてのレコードをDELETEする場合は、次のようにDELETEクエリでWHERE句を使用する必要はありません。
testdb=# DELETE FROM COMPANY;
これで、すべてのレコードがDELETEステートメントによって削除されたため、COMPANYテーブルにはレコードがありません。