Я создаю запрос с предложением 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
Линия COUNTIF(), очевидно, терпит неудачу, так как нет встроенной функции SQL, называемой COUNTIF, но идея здесь заключается в определении процента всех строк, которые имеют значение "1" для MyColumn.
Любые мысли о том, как правильно реализовать это в среде MS SQL 2005?
