嗨,为什么这不适用于SQL Server 2005?
select HALID, count(HALID) as CH from Outages.FaultsInOutages where CH > 3 group by HALID
我得到无效的列名'CH'
我认为有正确的方法,但仍然收到错误:无效的列名称'CH'.
运行时:
选择HALID,计数(HALID)为来自Outages.FaultsInOutages组的CH由HALID CH> 3
你不能在where子句或having子句中使用别名,因为直到生成结果集之后它才被处理,正确的语法是
SELECT HALID, COUNT(HALID) AS CH FROM Outages.FaultsInOutages GROUP BY HALID HAVING COUNT(HALID) > 3
这将在HALID上对项目进行分组,然后仅返回具有超过3个特定HALID条目的结果