ストアド プロシージャが Query Analyzer で 1 秒以内に実行される状況に遭遇しました。しかし、.NET SQL クライアント プロバイダーを使用して同じストアド プロシージャを実行すると、61 秒かかります。
したがって、この問題のトラブルシューティングを行うために、SQL プロファイラーにアクセスしたところ、リクエストは 1 秒未満で SQL Server に送信されましたが、実行は 60 秒後に完了しました。
なぜこのような偏差があるのか、誰か説明できますか?
クエリは非常に単純です。
SELECT distinct
p1.productID, p1.description
FROM
Details V
INNER JOIN
Product P ON V.ProductID = P.ProductID
INNER JOIN
product p1 ON p1.productID = p.parentID
WHERE
V.MarketID = '1159'
AND V.FinancialYear = '1213'
AND V.LEPeriodID = '75'
AND p1.parentID = 100024
AND p1.statusID = 1
ORDER BY
description