Có vẻ như cách nhanh nhất để làm những gì bạn muốn là thay đổi counted2
của bạn CTE, vì vậy cột TimesTested
xem xét logic của bạn. Vì vậy, nó phải là:
counted2 as (
SELECT
client_id,
CASE WHEN TimesTested >= 12 THEN 12 ELSE TimesTested END TimesTested,
CAST(COUNT(*) AS varchar(30)) AS count,
CAST(AVG(testfreq) as varchar(30)) as TestFreq,
CAST(STDEV(TestFreq) as varchar(30)) Stdv
FROM counted
GROUP BY
client_id,
CASE WHEN TimesTested >= 12 THEN 12 ELSE TimesTested END
)