The topic describes the DF040 T-SQL code analysis rule.
BEST PRACTICE
The DISTINCT keyword is used in the aggregate function.
Using DISTINCT in aggregate functions can cause significant performance degradation.
It should be noted that using DISTINCT in aggregate functions can lead to performance degradation, especially when dealing with large datasets. This may happen because DISTINCT requires the database engine to sort and eliminate duplicate values before performing the aggregation, which can be resource-intensive and time-consuming.
SELECT COUNT(DISTINCT id) AS count_id FROM dbo.DemoTable
GO
SELECT COUNT(id) AS count_id FROM dbo.DemoTable
GO