Доступ к запросу левого внешнего присоединения очень медленный

Я много раз видел этот вопрос, который задавали раньше, но все они включали запросы, созданные с помощью кода.

Я выполняю базовую процедуру создания запроса, в которой я вручную перетаскиваю имена полей из одной таблицы в другую, чтобы присоединиться к ним. Я присоединяю результат запроса к таблице. Первый запрос выводит таблицу примерно с 3 полями и 30 записями (этот первый запрос занимает не более 3 секунд). Вторая таблица - это около 15 полей и 30 000 записей. Я присоединяюсь к запросу с таблицей, используя 3 поля, и отображаю все записи запроса, независимо от того, являются ли они объединенными (таким образом, левое внешнее соединение).

Однако эта процедура занимает не менее 2 минут ...

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

Любые предложения относительно того, как я могу сделать это быстрее, или есть еще одна идея, как это сделать ????

Заранее спасибо!

Укажите типы данных полей и отображаемый оператор SQL (который можно получить в представлении SQL, а не в представлении «Дизайн»). Отредактируйте свой пост, указав эту информацию, а не в комментариях.

Parfait 10.08.2018 03:44
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
1
649
2

Ответы 2

Вы ничего не сказали об индексах, поэтому в этом ответе предполагается, что вы их не использовали. Вы можете значительно ускорить запросы, создав вторичные индексы для объединенных полей («первичный индекс» находится в поле первичного ключа).

Дополнительные сведения о том, как это сделать, см. В разделе эта почта службы поддержки Microsoft Office. Он должен предоставить вам всю необходимую информацию.

Спасибо за ответ, к сожалению, мне не удалось добавить индексы в связанную таблицу, так как дизайн нельзя изменить.

ExamFML 11.08.2018 14:50

@ExamFML Вы не упомянули, что ваша большая таблица была связанной таблицей из другой БД, которую вы не могли изменить. Но взгляните на это, прежде чем отказываться от этой идеи. Посмотрите на параметр "псевдоиндекс", который он объясняет. Я никогда не делал этого раньше, но похоже, что это позволяет вам создать индекс на своей стороне, когда вы создаете ссылку на таблицу.

BobRodes 12.08.2018 01:39

Спасибо @BobRodes, попробую :)

ExamFML 20.10.2018 01:57

Для тех, у кого в будущем возникнет такая же проблема, я в конечном итоге изменил свои запросы, чтобы делать запросы к таблицам, и это было намного быстрее. Я также заметил, что сквозные запросы стали еще быстрее, но я не хотел выбирать свою таблицу odbc каждый раз, когда запускаю ее, поэтому я застрял с запросами к таблицам.

Другие вопросы по теме