Оптимизация запроса получения остатков на каждый день. #811510


#0 by serg-lom89
прошу помощи по оптимизации запроса для получения остатков на каждый день. вот запрос который получает остатки (количество ) //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ вот запрос Который получается для литража //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ понятно что все получается через точку и это не есть хорошо. Подскажите как можно оптимизировать?
#1 by Borteg
сначала в запросе определить все склады которые там нужны, потом передать склад в (вложенный запрос по складам)
#2 by serg-lom89
вопрос в том что если по всем складам
#3 by Borteg
Склад.ТипСклада <> ЗНАЧЕНИЕ(перечисление.типыСкладов.виртуальный)
#4 by Borteg
эта конструкция адски усложняет оптимизатору жизнь и сам запрос. Если там будут уже склады в которых значение не виртуальный будет намного лучше
#5 by cw014
А зачем тут дни тянутся без связи?
#6 by serg-lom89
потом вывожу периодичностью по дням
#7 by serg-lom89
что то не могу "допереть" насчет условия по датам
#8 by Borteg
склады переделал уже? у зачемвообще оптимизируешь? запрос выполняет долго?
#9 by Вафель
а почему дни и движения никак не соединяются?
#10 by Вафель
не поможет с вероятностью 99.9999%
#11 by Timon1405
пробовали?
#12 by Borteg
поможет 100%, скорей всего это скд и связь там произведена.
#13 by Antony8x
Что сомнительно в плане производительности
#14 by breezee
Лучше во внутреннее соединение, так вроде (!ВРОДЕ!) быстрее будет работать
#15 by VS-1976
Так как конструктор непонятно как построит запрос ( может быть очень ужасный план исполнения ), то лучше сделать что-то подобное. Не перетендую на истину. В выборке { Номенклатура }, не всегда хорошо если иерархия большая, это сильно сказывается на произодительности... ВЫБРАТЬ     Номенклатура,     ... ИЗ     РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты( &НачалоПериода, &КонецПериода, ДЕНЬ, , Склад В ( ВЫБРАТЬ Склад ИЗ втФильтрПоСкладам ) {Номенклатура} ) ; ВЫБРАТЬ ВЫБРАТЬ     ... ИЗ     втДанные
#16 by VS-1976
Ошибка Номенклатура.НоменклатурнаяГруппа.Поставщик КАК Поставщик, спрНоменклатура.НоменклатурнаяГруппа.Поставщик КАК Поставщик,
#17 by Радим1987
Если СКД то лучше использовать 2 НабораДанных и в первым даты+ некоторые параметры во втором остатки из регистра  РегистрНакопления.ТоварыНаСкладах.ОСТАТКИ
#18 by Timon1405
то есть фактически поиметь запрос в цикле + что еще печальнее, соединение наборов происходит на клиенте.
#19 by VS-1976
На каждый день в течении месяца, при больших движения за день? Вы хотите к примеру за 31 день взять остатки? Это может сильно замедлить...
#20 by Радим1987
Личный опыт одним запросом медленнее, чем 2 мя наборами
#21 by VS-1976
Остатки вычисляются так: Остаток текущий - движения до даты..., а ОстаткиИОбороты ( Остаток + Сгруппированные Движения ) для периода ДЕНЬ рассчитываются после выборки, а не отбираются на каждый день...
#22 by Радим1987
Это тоже самое на каждый день
#23 by VS-1976
С чего ты взял что тоже самое, я всё расписал. Прочти несколько раз до просветления
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С