Имя: Пароль:
1C
1С v8
Как правильнее в запросе условие с разименовыванием
0 arsik
 
гуру
04.02.19
14:22
Вариант 1:
ВЫБОР
    КОГДА ЗаказыПоставщикам.Регистратор ССЫЛКА Документ.КорректировкаПоступления
        ТОГДА ВЫРАЗИТЬ(ЗаказыПоставщикам.Регистратор КАК Документ.КорректировкаПоступления).СкладКомпании
    КОГДА ЗаказыПоставщикам.Регистратор ССЫЛКА Документ.ПоступлениеТоваров
        ТОГДА ВЫРАЗИТЬ(ЗаказыПоставщикам.Регистратор КАК Документ.ПоступлениеТоваров).СкладКомпании
КОНЕЦ = &ТранзСкладКомпании


Вариант 2:
ВЫБОР
    КОГДА ЗаказыПоставщикам.Регистратор ССЫЛКА Документ.КорректировкаПоступления
        ТОГДА ВЫРАЗИТЬ(ЗаказыПоставщикам.Регистратор КАК Документ.КорректировкаПоступления).СкладКомпании = &ТранзСкладКомпании
    КОГДА ЗаказыПоставщикам.Регистратор ССЫЛКА Документ.ПоступлениеТоваров
        ТОГДА ВЫРАЗИТЬ(ЗаказыПоставщикам.Регистратор КАК Документ.ПоступлениеТоваров).СкладКомпании = &ТранзСкладКомпании
    ИНАЧЕ ЛОЖЬ
КОНЕЦ

Я склоняюсь к первому варианту. Какой вариант для оптимизатора будет лучше?
1 OldCondom
 
04.02.19
14:28
ЧТо будет с условием КОНЕЦ = &ТранзСкладКомпании , если регистратор не корректировка и не ПТУ?
2 aleks_default
 
04.02.19
14:30
один запрос
где
ВЫРАЗИТЬ(ЗаказыПоставщикам.Регистратор КАК Документ.КорректировкаПоступления).СкладКомпании
= &ТранзСкладКомпании

объединить все

второй запрос
где
ВЫРАЗИТЬ(ЗаказыПоставщикам.Регистратор КАК Документ.ПоступлениеТоваров).СкладКомпании = &ТранзСкладКомпании
3 arsik
 
гуру
04.02.19
14:33
(2) ТОчно.
(1) Ложь будет. Все сравнения с NULL = ложь
4 arsik
 
гуру
04.02.19
14:36
(2) Интересно нужно дополнять условие таким?
И ЗаказыПоставщикам.Регистратор ССЫЛКА Документ.КорректировкаПоступления
5 aleks_default
 
04.02.19
14:38
(3) Зачем?
6 arsik
 
гуру
04.02.19
14:46
Ну может в этом случае запрос оптимальнее будет или без разницы?
7 aleks_default
 
04.02.19
15:03
(6)без разницы
но кстати условие на тип вместо выразить (не вместе а вместо) возможно было бы быстрее
8 aleks_default
 
04.02.19
15:04
а не, тут так не выдет
9 arsik
 
гуру
04.02.19
15:17
(7) Спасибо.