Имя: Пароль:
1C
 
Соединение в запросе
0 Дебет
 
17.08.17
05:06
Обратил внимание что многие на форумах или видео лекциях в запросах (в задачах на Спеца)  делают так:
ИЗ
    ДокТЧ КАК ДокТЧ
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.СтоимостьТоваров.Остатки(
                &МоментВремени,
                Товар В
                    (ВЫБРАТЬ
                        ДокТЧ.Товар
                    ИЗ
                        ДокТЧ КАК ДокТЧ)
                        ) КАК СтоимостьТоваровОстатки
        ПО ДокТЧ.Товар = СтоимостьТоваровОстатки.Товар


Зачем указывать парметры РН (товар в...)? если и без него нормально соединяется по полю Товар??

привожу на всякий случай полный текст запроса


ВЫБРАТЬ
    РасходнаяСписокТоваров.Товар КАК Товар,
    СУММА(РасходнаяСписокТоваров.Количество) КАК Количество
ПОМЕСТИТЬ ДокТЧ
ИЗ
    Документ.Расходная.СписокТоваров КАК РасходнаяСписокТоваров
ГДЕ
    РасходнаяСписокТоваров.Ссылка = &Ссылка

СГРУППИРОВАТЬ ПО
    РасходнаяСписокТоваров.Товар

ИНДЕКСИРОВАТЬ ПО
    Товар
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ДокТЧ.Товар КАК Товар,
    ДокТЧ.Количество КАК Количество,
    СтоимостьТоваровОстатки.КоличествоОстаток,
    СтоимостьТоваровОстатки.СтоимостьОстаток,
    СтоимостьТоваровОстатки.Партия
ИЗ
    ДокТЧ КАК ДокТЧ
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.СтоимостьТоваров.Остатки(
                &МоментВремени,
                Товар В
                    (ВЫБРАТЬ
                        ДокТЧ.Товар
                    ИЗ
                        ДокТЧ КАК ДокТЧ)
                        ) КАК СтоимостьТоваровОстатки
        ПО ДокТЧ.Товар = СтоимостьТоваровОстатки.Товар

УПОРЯДОЧИТЬ ПО
    СтоимостьТоваровОстатки.Партия.МоментВремени
ИТОГИ
    МИНИМУМ(Количество)
ПО
    Товар


Очень интересно зачем так делать?
1 Рэйв
 
17.08.17
05:22
затем что в регистре может быть овер 1000 000 записей и соединять со всеми ними вспотеешь. Сначала отбираются остатки только по тому товару,который нужен и получается совершенно копеечная таблица для соединения.
2 Рэйв
 
17.08.17
05:42
+(1) только в приведенном запросе не хватает ЕстьNull на поля из остатков. А то можно нарваться
3 1dvd
 
17.08.17
05:53
Может, тебе почитать вообще для чего нужны параметры в виртуальных таблицах
4 Дебет
 
17.08.17
06:45
(3) знаю, но просто тут(1) очень локанично и точно ответили, СПАСИБО