#sql-server #typescript #typeorm #outer-apply
#sql-сервер #typescript #typeorm #внешний-применить
Вопрос:
Для проекта, которому я назначен, я должен изменить typeorm querybuilder, чтобы включить «внешнее применение».
Я не смог найти никакой поддержки в typeorm для этого.
Я искал способы сделать это с помощью объединения и подзапроса в «on» объединения, но количество данных в базе данных генерирует тайм-аут с использованием нескольких подзапросов. Кроме того, я изучил возможность вставки необработанного запроса в конструктор, но не смог найти механизм для этого.
Есть ли какой-либо способ использовать «apply» с typeorm?
Я лично предпочитаю писать все свои запросы вручную, поэтому, если вы придумаете причины НЕ использовать typeorm, я согласен!! Но это существующий проект, и я ни за что не собираюсь его переписывать!
Комментарии:
1. Я не знаком с TypeORM, но быстрый поиск обнаружил эту проблему на GitHub , которая предполагает, что она не поддерживается, однако, демонстрирует обходной путь.
2. Это именно то, что я пробовал, но из-за сложности внешнего apply в сочетании с подзапросом, необходимым для его применения, время ожидания составило более 60 секунд
3. Это мое личное мнение. Но я чувствую, что в определенный момент ORM не будет соответствовать вашим потребностям, особенно когда дело доходит до настройки запросов. Возможно, вы захотите рассмотреть возможность создания этого непосредственно в SQL как функции / хранимой процедуры / представления (что когда-либо подходит лучше всего), чтобы обеспечить правильную настройку запросов / индексов. ORM хороши, но обычно для операций, которые не требуют настройки.