Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Quando o desempenho de Distinct e Group By são diferentes?


Se você incluir um valor calculado na lista de campos, verá uma diferença no plano de execução.
select Value,
       getdate()
from YourTable
group by UnitID

select distinct
       Value,
       getdate()
from YourTable

O group by consulta agrega antes de calcular o valor escalar. O distinct query calcula o valor escalar antes da agregação.