У меня сложный запрос к базе данных с плохой статистикой и фрагментированными индексами. Что меня озадачивает, так это то, что когда я изучаю реальный план запроса, я получаю 54 миллиона строк при сканировании таблицы, содержащей 23 тысячи строк. Гораздо дальше по плану запроса эта таблица объединяется сама с собой (только 260 K строк из 23 K). Как это возможно?
Выполнение других запросов или перестройка индексов и статистики решают эту проблему, я просто пытаюсь понять, почему это могло произойти.
Я воспроизвел это с SQL 2005 и SQL 2008 R2 при восстановлении той же базы данных.
Обновление: Да, это реальный план. Количество строк - 20039 (не 23 КБ, как упоминалось выше). Это один из крайних правых узлов.