❓Рубрика: Вопросы на собеседовании #вопросынасобесах
На позицию: Программист 1С
Вопрос:
Как можно оптимизировать по производительности запрос ниже, учитывая, что в конкретной базе движения регистра на практике производятся только документом ЗаказПоставщику, хотя в регистраторах у этого регистра множество документов?
ВЫБРАТЬ ЦеныНоменклатурыПоставщиков.Регистратор.Номер, ЦеныНоменклатурыПоставщиков.Цена ИЗ РегистрСведений.ЦеныНоменклатурыПоставщиков КАК ЦеныНоменклатурыПоставщиков
Ответ:
Для этого используем конструкцию ВЫРАЗИТЬ, что отсечет соединение с таблицами документов других типов, кроме ЗаказПоставщику, а также поставим условие на тип регистратора при помощи конструкции ССЫЛКА.
ВЫБРАТЬ ВЫРАЗИТЬ(ЦеныНоменклатурыПоставщиков.Регистратор КАК Документ.ЗаказПоставщику).Номер КАК Номер, ЦеныНоменклатурыПоставщиков.Цена ИЗ РегистрСведений.ЦеныНоменклатурыПоставщиков КАК ЦеныНоменклатурыПоставщиков ГДЕ ЦеныНоменклатурыПоставщиков.Регистратор ССЫЛКА Документ.ЗаказПоставщику Подпишись на 1С Работа