0
SQL Server 2012SQL Server功能超時 - 儘管函數內部的select語句運行1秒
任何人都可以在這種情況下闡明一些情況嗎?
我有一個函數調用一個非常複雜的選擇語句。它接受3個參數
Select *
from Myfunction(@CompanyId, @DivisionId, @PersonId)
10分鐘後超時。
如果我把該函數的內部SQL聲明爲相同的變量,將它們設置爲相同的值並運行,則需要一秒鐘才能返回8條記錄。
如果我用@CompanyId
運行函數不返回結果,我沒有按預期返回行並立即返回(所以這不是權限問題)。
我們剛剛插入了很多數據來處理這個函數,但是這並不能解釋爲什麼select會起作用並且函數掛起?
任何想法?
這是一個表值函數,它有一堆語句嗎?這被稱爲多語句表值函數,幾乎總是比標量函數慢。你能分享功能代碼嗎?沒有它,我們能做的最好就是猜測。 –
當你說它超時時,你究竟是什麼意思? SQL只會讓它永遠運行。你運行這個程序檢查sp_who2是否有阻塞? –
基於性能的問題,你必須分享代碼先生。 –