Supongo que quiere decir que si el stock > 1000
luego otro color not green
.
SELECT Beer.Beer,
Beer.Brewery,
Beer.Style,
Beer.ABV,
Beer.Hops,
Beer.SRM,
Sum(BeerStock.Quantity) totalQuantity,
CASE WHEN Sum(BeerStock.Quantity) < 0 THEN ''
WHEN Sum(BeerStock.Quantity) BETWEEN 0 AND 999 THEN 'Red'
WHEN Sum(BeerStock.Quantity) BETWEEN 1000 AND 4999 THEN 'Yellow'
WHEN Sum(BeerStock.Quantity) BETWEEN 5000 AND 9999 THEN 'GREEN'
WHEN Sum(BeerStock.Quantity) >= 10000 THEN 'Another Color'
END
FROM Beer
INNER JOIN BeerStock
ON Beer.Beer = BeerStock.Beer
-- Where ..other conditions..
pero si realmente lo dices en serio,
SELECT Beer.Beer,
Beer.Brewery,
Beer.Style,
Beer.ABV,
Beer.Hops,
Beer.SRM,
Sum(BeerStock.Quantity) totalQuantity,
CASE WHEN Sum(BeerStock.Quantity) < 0 THEN ''
WHEN Sum(BeerStock.Quantity) BETWEEN 0 AND 999 THEN 'Red'
WHEN Sum(BeerStock.Quantity) BETWEEN 1000 AND 4999 THEN 'Yellow'
WHEN Sum(BeerStock.Quantity) >= 5000 THEN 'GREEN'
END
FROM Beer
INNER JOIN BeerStock
ON Beer.Beer = BeerStock.Beer
-- Where ..other conditions..
Una cosa más, también necesita usar GROUP BY
cláusula o, de lo contrario, devolverá solo un registro incluso si tiene registros diferentes,
SELECT Beer.Beer,
Beer.Brewery,
Beer.Style,
Beer.ABV,
Beer.Hops,
Beer.SRM,
Sum(BeerStock.Quantity) totalQuantity,
CASE WHEN Sum(BeerStock.Quantity) < 0 THEN ''
WHEN Sum(BeerStock.Quantity) BETWEEN 0 AND 999 THEN 'Red'
WHEN Sum(BeerStock.Quantity) BETWEEN 1000 AND 4999 THEN 'Yellow'
WHEN Sum(BeerStock.Quantity) BETWEEN 5000 AND 9999 THEN 'GREEN'
WHEN Sum(BeerStock.Quantity) >= 10000 THEN 'Another Color'
END
FROM Beer
INNER JOIN BeerStock
ON Beer.Beer = BeerStock.Beer
-- Where ..other conditions..
GROUP BY Beer.Beer,
Beer.Brewery,
Beer.Style,
Beer.ABV,
Beer.Hops,
Beer.SRM