????????

?????????????ó???????ü?????/?洢??????????????????????????????where????У?????????????????????????selective??????????ú???????????Ρ??????????????????????????????????????

?????????????

??????????????????????????????????????????????????е????????????????????????£?SQLServer????????where?е??У????????????????????????????????????????????????????????????б???????????????е??????????????????裨scan????????????????????????????????????????????????????????AdventureWorks??????????????????AccountNumber??Sales.Customer???в??????????AccountNumber????е???????????varchar(10)?????????????????????????????????????м?????????????????????????


create proceduredbo.PrecedenceTest
(
 @AccountNumber varchar(10)
)
as
begin
 set nocount on
 select *
 from Sales.Customer
 where AccountNumber = @AccountNumber
end
go
exec dbo.PrecedenceTest'AW00030113'
go


??????м?????£?

???????????????????????ЩС????????????nvarchar(10)???????????????


alter procedure dbo.PrecedenceTest
(
@AccountNumber nvarchar(10)
)
as
begin
set nocount on
select *
from Sales.Customer
where AccountNumber = @AccountNumber
end
go
exec dbo.PrecedenceTest 'AW00030113'
go


??????м????????????????????TerritoryID?????????

???????Filter?????????????AccountNumber??????????????????????????????????????????varchar?????????nvarchar????????????????????????Ч??