У меня был запрос, который работал правильно, который выглядел следующим образом:
SELECT c.id, c.uid, c.name, c.end_date FROM core.customers c
INNER JOIN cms.fruit_policies ovp ON ovp.fruit_units = c.id
WHERE(
SELECT
count(*) as c,
FROM core.fruits f
INNER JOIN cms.fruit_policies ov ON ov.fruit_units = f.id
WHERE ov.template_uid IS NOT NULL
AND ov.template_uid = 'TdBljmQIbB'
AND f.customer_id = c.id
group by c.id
) = (select count (*) from core.fruits f where f.customer_id = c.id) -- This line is where I need help
AND ovp.template_uid <> 'TdBljmQIbB'
AND c.end_date > '2019-04-15'
order by c.end_date desc
Запрос был немного неэффективным, потому что я сканировал таблицу core.fruits дополнительное время, чтобы выполнить подсчет, где все customer_id's = c .id, я не уверен, как бы я это сделал в под-выборе.