似懂非懂中...
假设在有两句语句
select * from tableA where a=1select * from tableA where a=5并且在sys.dm_exec_query_stats中显示,这两句query拥有相同的query_hash和query_plan_hash。应该怎么判断第二句query重用了第一句的执行计划? 根据sql server的parameterization的解释,就算是simple parameterization类似于上两句这么简单的query应该会被系统parameter后重用plan,但是我怎么能确认确实是重用了第一个query的plan?假设是两句更复杂的query
select * from tableA left join TableB on ....
              Left join (select ... from TableC) on....
              ...
              .
where a=1select * from tableA left join TableB on ....
              Left join (select ... from TableC) on....
              ...
              .
where a=5再假设系统没用自动parameter这两句较复杂的query,需要我在application里使用parameter,
改成select * from tableA left join TableB on ....
              Left join (select ... from TableC) on....
              ...
              .
where a=?修改后应该怎么能看出parameter后的效果?谢谢