Альтернативы объединениям в SQL Server

У меня есть несколько связанных схем схем, к которым я хотел бы добавить индексы для повышения производительности.

Проблема в том, что они имеют несколько union allв них.

Я ищу общие рекомендации по рефакторингу / подходы, чтобы заменить union allс чем-то, что позволило бы создать индекс на представлении.

По сути, есть два логических сценария для союзов, которые используются в представлениях в настоящее время:

  1. У нас есть EntityA, которая выражается в виде. Источники для этой сущности взяты из разных таблиц. То есть некоторые EntityAs записаны в Таблице A, некоторые записаны в Таблице B.

  2. У нас есть EntityA, которая выражается в виде. Таблица A Источники EntityA. Каждая строка в TableA должна создать несколько EntityAs в представлении.

Спасибо.

1 ответ

Решение

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

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