create table T(ID int identity primary key)
insert into T default values
insert into T default values
go
select cast(ID as varchar(10)) as ID
from T
where ID = 1
La requête ci-dessus a un avertissement dans le plan de requête.
<Warnings>
<PlanAffectingConvert ConvertIssue="Cardinality Estimate" Expression="CONVERT(varchar(10),[xx].[dbo].[T].[ID],0)" />
</Warnings>
Pourquoi a-t-il l'avertissement?
Comment un cast dans la liste des champs peut-il affecter l'estimation de la cardinalité?