使用负值启动SQL计数查询

使用负值启动SQL计数查询,sql,sql-server-2008,Sql,Sql Server 2008,如果计数中的值超过30,我如何让计数查询返回值 SELECT COUNT (DISTINCT a.orders) FROM dbo.orders_table a WHERE a.unshipped 如果返回29,则计数将为NULL,但30或更大的计数将返回整数。如果要在列中使用NULL,则应使用CASE: SELECT (CASE WHEN COUNT(DISTINCT a.orders) >= 30 THEN COUNT(DISTINCT a.orders) END) FROM dbo

如果计数中的值超过30,我如何让计数查询返回值

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

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

如果要在列中使用
NULL
,则应使用
CASE

SELECT (CASE WHEN COUNT(DISTINCT a.orders) >= 30 THEN COUNT(DISTINCT a.orders) END)
FROM dbo.orders_table a
WHERE a.unshipped ??;
中的条件是什么

如果不需要行,请使用
HAVING

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

如果要在列中使用
NULL
,可以使用
CASE

SELECT (CASE WHEN COUNT(DISTINCT a.orders) >= 30 THEN COUNT(DISTINCT a.orders) END)
FROM dbo.orders_table a
WHERE a.unshipped ??;
中的条件是什么

如果不需要行,请使用
HAVING

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

不,第一个正是我需要的。我不知道怎么做。不过我肯定会把第二份归档。再次谢谢你。不,第一个正是我需要的。我不知道怎么做。不过我肯定会把第二份归档。再次感谢你。