Sql Server 在计数(COUNT)的时候去重

时间:2025-03-16 07:55:31

Sql Server 在计数(COUNT)的时候去重

我以前的写法

SELECT Count(1) FROM (
	SELECT 
		CustomerId 
	FROM MeterRecord 
	Group by CustomerId
)V
--//或者 下面这个查询效率比上面的快一丢丢丢
--//数据量小:速度基本忽略不计
WITH CTE AS (
	SELECT 
		CustomerId 
	FROM MeterRecord 
	Group by CustomerId
)
SELECT 
	Count(1) 
FROM CTE 

我现在的写法

SELECT 
	Count(DISTINCT CustomerId) 
FROM MeterRecord 

两种写法高下立判代码量减少至少3行

有什么不足望指出,谢谢