TSQL 计数“Where”条件

问题描述 投票:0回答:2

如何实现以下伪 SQL 语句的“含义”:

COUNT(distinct id where attribute1 > 0)

换句话说,如何制作有条件的、不同的计数语句?

谢谢!

t-sql count conditional-statements distinct
2个回答
48
投票

好吧,如果您可以过滤整个查询,那么 LittleBobbyTables 已经为您提供了答案。如果没有,您可以像这样获取该列:

count(distinct case when attribute1 > 0 then id end) -- implicit else null

6
投票

你几乎已经拥有了:

SELECT COUNT(DISTINCT [ID]) AS DistinctID
FROM YourTable
WHERE attribute1 > 0
© www.soinside.com 2019 - 2024. All rights reserved.