У меня есть SQL-запрос и два восстановления одной и той же базы данных с разными датами.Одно восстановление выполняется 7 ноября, а другое - 10 декабря. Запрос выполняется 5 часов при восстановлении базы данных 7 ноября, а тот же запрос выполняется 23-25 секунд при восстановлении базы данных 10 декабря
Я сравнилиндексы в обеих базах данных таблиц, участвующих в запросе, но индексы одинаковы в обеих.Затем я проверил план выполнения запроса того же запроса в обоих случаях восстановления базы данных.Найдено много различий в обоих планах выполнения.В плане выполнения запроса восстановления базы данных 7 ноября я вижу много вложенных соединений по сравнению с восстановлением базы данных 10 декабря.Место, где Nested Join используется SQL Server в базе данных 7 ноября, там же, где Merge Join используется в базе данных 10 декабря.
Может кто-нибудь помочь объяснить, почему у нас есть это расхождение в плане выполнения запроса итакже, почему именно запрос выполняется медленно в базе данных 7 ноября.