SQL запрос, который выведет номер документа, где все значения в join таблице = NULL
СУБД PostgreSQL.
Таблица info:
Таблица addon:
Связаны между собой по id.
Вопрос: как найти нужный ID документа в таблице info, для которого в таблице addon все записи в поле item равны NULL.
Т.е. я должен найти именно 44 айди документа в info, тк для 45-го документа минимум 1 запись не равна NULL в таблице addon.
Получается только для хотя бы 1 записи, а для всех - не понятно как...
select id from info i
join addon a using(id)
where a.item is null
group by id
Ответы (2 шт):
Автор решения: Akina
→ Ссылка
SELECT id
FROM info
WHERE NOT EXISTS (
SELECT NULL
FROM addon
WHERE info.id = addon.id
AND addon.item IS NOT NULL
)
Автор решения: rotabor
→ Ссылка
SELECT info.ID
FROM info INNER JOIN addon ON info.ID = addon.ID
GROUP BY info.ID
HAVING (NOT (((MIN(addon.item)) IS NOT NULL)));
Заменил FIRST на MIN, должно работать в постгресе

