1. 程式人生 > >SqlServer優化日誌(1)

SqlServer優化日誌(1)

背景:實施人員反饋  函式  select * from f_getHomeInfo('01','','')非常慢需要9秒,而以前只要1秒。

操作:1、我把函式的內容拿出來執行,非常快,依然是1秒完成

   2、我把函式的內容放到儲存過程去執行,非常慢,需要9秒

   3、對比函式的執行計劃和SQL的執行計劃,完全一樣

   4、仔細檢視執行計劃發現預估一行,實際3000多行,於是猜想是預估記憶體太少導致的問題,想要提高預估記憶體,就要提高預估行,於是我使用了OPTION (OPTIMIZE FOR UNKNOWN)這個暗示,告訴優化器這個查詢條件不太確定,於是優化器就會預估一個比較穩妥的行數。

   5、修改完成之後再次執行,回到正常速度1秒