Этот запрос возвращает количество строк, в которых сумма количества продуктов равна 0, а название продукта — «XYZ». Но я хочу одинаковый результат для каждого продукта. Например, если я удалю название продукта из предложения where, он выведет СУММУ каждого продукта, где количество равно 0. Я хочу, чтобы он возвращался отдельно для каждого продукта. Продукты могут увеличиться в будущем. Я должен сначала проверить, сколько различных продуктов находится в таблице CustomerProduct, а затем мне нужно запросить одни и те же вещи для каждого продукта. Как мне это сделать. Название может быть не идеальным, пожалуйста, предложите / исправьте, если это необходимо.
select Count(*) From
(select distinct VI.Name, Cp.ProductName
FROM VendorInfo VI inner join VendorTrading VT on VI.Id = VT.VendorId inner join CustomerProducts CP on VT.Id = CP.VendorTradingId
Where VT.Tradedate = '2015-12-25' and CP.ProductName = 'XYZ'
GROUP BY VI.Name, Cp.ProductName, CP.ProductQuantity
HAVING SUM( CP.ProductQuantity ) = 0) as x