В нашем приложении есть следующая команда SQL.
SELECT trackerid,taskid,action,sendto, sendtofullname, recfrom, actiontime
FROM [LO].[dbo].[TRACKER] WITH (NOLOCK)
where [EVENTRECORDID] = ? and ACTION in (1,4,5,15,4000,4200)
order by Actiontime
Она работала некоторое время и была очень быстрой, но в последние дни она стала чрезвычайно медленной.Я изменил его на
SELECT trackerid,taskid,action,sendto, sendtofullname, recfrom, actiontime
FROM [LO].[dbo].[TRACKER]
where [EVENTRECORDID] = ? and ACTION in (1,4,5,15,4000,4200)
order by Actiontime
Поэтому я удаляю раздел WITH (NOLOCK).
И он снова стал быстрым.Это имеет какой-то смысл, и я понятия не имею, почему у него такое поведение.Я также волнуюсь, что это снова стало медленным.Может ли кто-нибудь объяснить мне это?
А сервер БД - MS SQL 2008
Спасибо