DELETE в PostgreSQL: удаление данных

Оператор DELETE в PostgreSQL используется для удаления строк из таблицы. Он позволяет удалять отдельные записи по заданному условию или все данные из таблицы.

Основы оператора DELETE

Базовый синтаксис:

DELETE FROM table_name WHERE condition;

Удаление одной строки:

DELETE FROM users WHERE id = 1;

Удаление нескольких строк по условию:

DELETE FROM users WHERE age < 18;

Удаление всех данных из таблицы

Если WHERE не указано, удаляются все строки:

DELETE FROM users;

Использование DELETE с RETURNING

Для получения информации об удаленных строках используется RETURNING:

DELETE FROM users WHERE age < 18 RETURNING *;

Удаление с использованием подзапросов

Можно удалять строки, соответствующие данным из другой таблицы:

DELETE FROM users WHERE city IN (SELECT city FROM inactive_cities);