sql server - How to improve SQL performance for this case? -
i issue following sql:
select * mytable myid =123 , mydate >= (case when isnull(null,'')='' mydate else null end)
performance pretty bad.
if modify this:
select * mytable myid =123 , mydate >= mydate
the performance better.
my real sql like:
select * mytable myid =123 , mydate >= (case when isnull(@mydate,'')='' mydate else null end)
mydate
datetime
column.
how improve performance case?
if t-sql then:
declare @mydate datetime set @mydate = null if @mydate not null begin select * mytable myid = 123 , mydate >= @mydate end else begin select * mytable myid = 123 , mydate >= '' end
else param'd sql:
select * mytable myid = 123 , (@mydate null or mydate >= @mydate)
edit: added not if condition.
Comments
Post a Comment