In a test at university there was a question; is it possible to use an aggregate function in the SQL WHERE clause.
I always thought this isn\'t possibl
Another solution is to Move the aggregate fuction to Scalar User Defined Function
Create Your Function:
CREATE FUNCTION getTotalSalesByProduct(@ProductName VARCHAR(500))
RETURNS INT
AS
BEGIN
DECLARE @TotalAmount INT
SET @TotalAmount = (select SUM(SaleAmount) FROM Sales where Product=@ProductName)
RETURN @TotalAmount
END
Use Function in Where Clause
SELECT ProductName, SUM(SaleAmount) AS TotalSales
FROM Sales
WHERE dbo.getTotalSalesByProduct(ProductName) > 1000
GROUP BY Product
References:
1. 2.
Hope helps someone.