У меня есть SQL запрос, который выглядит следующим образом:Используя условие с левой включается в PostgreSQL
DELETE FROM survey_subjects WHERE id IN (
SELECT ss.id FROM survey_subjects ss
LEFT JOIN survey_instances si ON si.survey_subject_id = ss.id
LEFT JOIN survey_packs sp ON si.survey_pack_id = sp.id
LEFT JOIN school_packs scp ON sp.school_pack_id = scp.id
LEFT JOIN survey_orders so ON scp.survey_order_id = so.id AND so.administration_id = <administration_id>
WHERE ss.administration_id = <administration_id> AND si.id IS NULL
);
Я думал, как я могу сделать этот запрос более читаемым. Я думал об использовании предложения USING из PostgreSQL, но он не будет работать для левых соединений. Есть ли способ сделать его более читаемым?
'использование' конечно конечно работа для левого соединения. Но: 'использование' применимо только в том случае, если столбцы объединения имеют одинаковое имя в обеих таблицах, что явно не соответствует вашим таблицам. –