|
Регистр остатков. Является ли необходимым наложение параметра в запросе? | ☑ | ||
---|---|---|---|---|
0
ЛисИзЛеса
18.05.15
✎
08:26
|
Дан запрос:
Запрос.Текст = "ВЫБРАТЬ | МАКСИМУМ(ЕСТЬNULL(ОстаткиТоваровОстатки.КоличествоОстаток, 0)) КАК КоличествоОстаток, | СУММА(РасходнаяТовары.Количество) КАК Количество, | МАКСИМУМ(ЕСТЬNULL(ОстаткиТоваровОстатки.СтоимостьОстаток, 0)) КАК СтоимостьОстаток, | РасходнаяТовары.Номенклатура КАК Номенклатура |ИЗ | Документ.Расходная.Товары КАК РасходнаяТовары | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиТоваров.Остатки( | &МоментВремени, | Номенклатура В | (ВЫБРАТЬ | РасходнаяТовары.Номенклатура | ИЗ | Документ.Расходная.Товары КАК РасходнаяТовары | ГДЕ | РасходнаяТовары.Ссылка = &Ссылка)) КАК ОстаткиТоваровОстатки | ПО РасходнаяТовары.Номенклатура = ОстаткиТоваровОстатки.Номенклатура |ГДЕ | РасходнаяТовары.Ссылка = &Ссылка | И НЕ РасходнаяТовары.Номенклатура.Услуга | |СГРУППИРОВАТЬ ПО | РасходнаяТовары.Номенклатура"; Хотелось бы уточнить является ли необходимым, при условии что обрабатывается большой объем данных, в этом запросе вот это ограничение: Номенклатура В | (ВЫБРАТЬ | РасходнаяТовары.Номенклатура | ИЗ | Документ.Расходная.Товары КАК РасходнаяТовары | ГДЕ | РасходнаяТовары.Ссылка = &Ссылка) |
|||
1
shuhard_серый
18.05.15
✎
08:32
|
(0) [является ли необходимым]
нет |
|||
2
ЛисИзЛеса
18.05.15
✎
08:32
|
Может стоит сначала сделать запрос к документу и поместить его в временную таблицу и далее делать соединение с регистром остатков, накладывая ограничение на параметры виртуальной таблицы (как выше)?
|
|||
3
ЛисИзЛеса
18.05.15
✎
08:34
|
(1) То есть ни на производительность, ни на объем выборки из таблицы регистра, отсутствие этого ограничения ни как повлиять не может?
|
|||
4
EugeniaK
18.05.15
✎
08:41
|
(3) Может.
Но необходимым не является. Если в таблице десяток документов, то без него быстрее. Если несколько миллионов, то нужно писать вообще через временную таблицу. |
|||
5
Lamer1C
18.05.15
✎
08:53
|
(0) при больших объемах данных это запрос будет выполняться очень долго, даже с условием..
|
|||
6
Фрэнки
18.05.15
✎
09:38
|
Желательно все-таки уточнять, что большой объем данных - это вообще в какой таблице: таблице Номенклатура или таблице регистра какого-то?
И условие отбора Номенклатура В (...) сколько раз используется в запросе, если больше чем один раз, то обязательно создать Временную таблицу и отбирать из нее. Вообще, накладывать отбор Номенклатура В (...) очень хорошо ускоряет работу запроса, но заметный эффект будет в действительно многократно повторяемых отборах в тексте и на действительно больших объемах данных |
|||
7
vde69
18.05.15
✎
09:40
|
||||
8
ЛисИзЛеса
18.05.15
✎
09:54
|
(6) Именно в регистре остатков.
То есть всего позиции в документе, допустим, десятки. В регистре остатков порядка нескольких тысяч вариантов по номенклатуре. То есть всё-таки временная таблица сделанная по данным документа. |
|||
9
hhhh
18.05.15
✎
09:59
|
(8) ну если несколько тысяч, то не стоит париться. Вот если от ста тысяч тогда да.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |