最佳答案
我用一个 GROUP BY
子句构建了一个查询,它需要仅根据某个条件计数记录的能力(例如,只计数某个列值等于1的记录)。
SELECT UID,
COUNT(UID) AS TotalRecords,
SUM(ContractDollars) AS ContractDollars,
(COUNTIF(MyColumn, 1) / COUNT(UID) * 100) -- Get the average of all records that are 1
FROM dbo.AD_CurrentView
GROUP BY UID
HAVING SUM(ContractDollars) >= 500000
是1
由于没有称为 COUNTIF
的本机 SQL 函数,COUNTIF()
行显然失败了,但是这里的想法是确定 MyColumn 的值为“1”的所有行的百分比。
关于如何在 MSSQL2005环境中正确实现这一点,您有什么想法吗?