Есть 2 таблицы. products и vendors_products. Одна содержит информацию о товаре. Вторая содержит информацию о товаре на определенном складе.
У products есть колонка type. У vendors_products есть колонка vendor
Сижу пытаюсь как-то сделать без подзапросов так, чтобы были выбраны все товары (products), у которых хотя бы на одном складе, кроме X, есть товары, или товары, имеющие type X и у которых на складе X тоже есть товар.
Что то типа
SELECT * FROM products
LEFT JOIN products_vendors
ON products.id=products_vendors.product_id
WHERE product_vendors.vendor_id IN (‘a’, ‘b’, ‘x’)
GROUP BY products.id
HAVING SUM(products_vendors.quantity (тут как-то попытался придумать условие через CASE, но выдает ошибку) > 0)
OR products_vendors.vendor = 'x' AND products_vendors.quantity > 0