Цитата:
Сообщение от
Сисой
В 1С удобная фишка разыменования запросов. Запрос
X++:
Select Z.. From . as Z
автоматически сформирует левое соединение с таблицей Справочник.Контрагенты и выберет из него ПолноеНаименование. В Ax так же?
Ни в коем случае! Упаси бог!
Эта "удобная фикша" приводит к тому, что на запрос одной таблицы (справочника, регистра), платформа 1С может автоматически построить очень сложный запрос с кучей join'ов. А если запросить две таблицы, то легко можно получить запрос с несколькими десятками таблиц.
И прощай всякая оптимизация. Хотя бы потому, что управлять или отключать такое разыменование невозможно. А, например, MS SQL перестает выполнять оптимизию запроса, если в нем указано больше 8 таблиц.
Ни в коем случае!
Цитата:
Сообщение от
Сисой
Также язык запросов 1С имеет интересное расширение Итоги (Total),
Эта конструкция позволяет, сохранив первоначальный текст запроса, автоматически добавлять в результат итоги, посчитанные по заданным группировкам. Причем результат можно тут же выгрузить в дерево, узлами которого будут описанные итоги.
Ага. Только выполняется это действие НЕ на SQL-сервере. Со всеми вытекающими последствиями для производительности.