klo*_*dge 11 sql sql-server variables datetime
我有一个包含两个值的表:
ciid, businessdate
Run Code Online (Sandbox Code Playgroud)
ciid是主键,并且已启用自动增量.businessdate(datetime)由另一个进程插入.
给出以下查询:
select top(1) ciid, businessdate
from checkitemsales
where businessdate='10/9/16 00:00:00:000'
Run Code Online (Sandbox Code Playgroud)
返回仅需1.2秒,而此查询:
declare @var1 datetime
set @var1='10/9/16 00:00:00:000'
select top(1) ciid, businessdate
from checkitemsales
where businessdate = @var1
Run Code Online (Sandbox Code Playgroud)
返回需要5.6秒.
谁能告诉我我做错了什么?
declare @var1 datetime
set @var1='10/9/16 00:00:00:000'
select top(1) ciid, businessdate
from checkitemsales
where (businessdate = @var1) option (recompile)
Run Code Online (Sandbox Code Playgroud)
试试这个,让我知道结果,可能会更快