使用负基值启动SQL COUNT查询

时间:2017-05-03 14:25:50

标签: sql sql-server-2008

如果计数超过30,我如何获得COUNT查询才能返回值?

SELECT
COUNT (DISTINCT a.orders)
FROM dbo.orders_table a
WHERE a.unshipped

如果返回29,则计数为NULL,但30或更大将返回整数。

1 个答案:

答案 0 :(得分:0)

如果您希望列中有NULL,则可以使用CASE

SELECT (CASE WHEN COUNT(DISTINCT a.orders) >= 30 THEN COUNT(DISTINCT a.orders) END)
FROM dbo.orders_table a
WHERE a.unshipped ??;

WHERE中的条件是什么?

如果您想要无行,请使用HAVING

SELECT COUNT(DISTINCT a.orders)
FROM dbo.orders_table a
WHERE a.unshipped
HAVING COUNT(DISTINCT a.orders) >= 30 ;