如何在包含分组函数的where子句中引用别名列

时间:2013-08-28 21:56:08

标签: mysql sql

我在下面有一个简单的SQL查询,它为我生成了一个可用的结果。但是,我希望进一步限制此查询的结果,只包括别名列总数小于10的结果。我尝试直接引用where子句中的别名列,并且还复制了一个COUNT()部分。 where子句,但这不起作用。这是查询,提前感谢您的帮助。

SELECT COUNT(DISTINCT iDomainID) AS totInFile, iFileGroup
FROM Domains.`ApacheVirtualHosts`
GROUP BY iFileGroup

2 个答案:

答案 0 :(得分:4)

您可以使用HAVING子句进一步过滤:

SELECT COUNT(DISTINCT iDomainID) AS totInFile, iFileGroup
FROM Domains.`ApacheVirtualHosts`
GROUP BY iFileGroup
HAVING COUNT(DISTINCT iDomainID) < 10;

HAVING子句允许您使用聚合函数过滤数据。

答案 1 :(得分:2)

您需要HAVING子句:

SELECT COUNT(DISTINCT iDomainID) AS totInFile, iFileGroup
FROM Domains.`ApacheVirtualHosts`
GROUP BY iFileGroup
HAVING COUNT(DISTINCT iDomainID) < 10