Как заставить принудительно выполнить подзапрос так же, как таблицу #temp?

Я повторяю вопрос, заданный Mongus PongПочему использование временной таблицы будет быстрее, чем вложенный запрос? который неу меня нет ответа, который работает для меня.

Большинство из нас в какой-то момент обнаруживают, что, когда вложенный запрос достигает определенной сложности, он должен разбиваться на временные таблицы, чтобы поддерживать его производительность. этоабсурд что это когда-либо может быть наиболее практичным способом продвижения вперед и означает, что эти процессы больше не могут быть видны. И часто сторонние BI-приложения будут хорошо работать только с представлениями, поэтому это очень важно.

Я убежден, что должна быть простая настройка плана запросов, чтобы двигатель просто спулировал каждый подзапрос по очереди, работая изнутри. Нет второго гадания, как он может сделать подзапрос более избирательным (что иногда бывает очень успешно), и нет возможности коррелированных подзапросов. Просто стек данных, которые программист намеревался вернуть в виде автономного кода в скобках.

Я часто обнаруживаю, что простой переход из подзапроса в таблицу # занимает от 120 секунд до 5. По сути, оптимизатор где-то допускает серьезную ошибку. Конечно, могут быть очень трудоемкие способы, которыми я мог бы уговорить оптимизатора смотреть на таблицы в правильном порядке, но даже это не дает никаких гарантий. Я'я не спрашиваю об идеальном 2-секундном времени выполнения здесь, только скорость, которую временные табуляции предлагают мне в пределах гибкостиview.I»

никогда раньше не публиковал здесь, но я годами писал SQL и читал комментарии других опытных людей, которыеМы также просто пришли, чтобы принять эту проблему, и теперь я хотел бы, чтобы соответствующий гений сделал шаг вперед и сказал, что особый намек - это Х ...

Ответы на вопрос(4)

Ваш ответ на вопрос