使用聚集函数解释数据的结束

使用诸如 SUMMINAVG 这样的聚集函数的 SELECT 语句总会成功地返回至少一行数据,即使当没有行满足 WHERE 子句时。基于行的空集的聚集值为空,但它仍然存在。

然而,如果聚集值是基于都包含空值的一行或多行,则聚集值也为空。如果您必须能够检测不基于任何行的聚集值与基于某些都是空的行的聚集值之间的差异,则您必须在该语句中包括 COUNT 函数和聚集值上的指示符变量。然后,您可得出下列情况。
计数值 指示符 具体情况
0 -1 选择了零行
>0 -1 选择了某些行;全部为空
>0 0 选择了一些非空行