我有一个表颜色:
white NULL
white 5
red 3
red 7
blue 6
blue 4
我想要一个avg函数来平均颜色。 AVG功能忽略了'白色NULL'因为它为null。我希望它完全忽略白色。我希望它只显示
red 5
blue 5
无法弄清楚如何忽略'类别'一个空值的值
答案 0 :(得分:1)
使用HAVING
子句过滤掉不需要的颜色:
SELECT
color,
AVG(value) AS avg_value
FROM yourTable
GROUP BY color
HAVING SUM(CASE WHEN value IS NULL THEN 1 ELSE 0 END) = 0