Имя: Пароль:
1C
1С v8
Какой запрос быстрее?..
,
0 Cthulhu
 
19.03.21
22:59
Два запроса с одинаковым результатом:
1)
ВЫБРАТЬ ЗаказПокупателя.Ссылка КАК ЗаказПокупателяПоОснованию
ИЗ Документ.ЗаказПокупателя КАК ЗаказПокупателя
ГДЕ ЗаказПокупателя.ДокументОснование = &Основание
2)
ВЫБРАТЬ ЗаказПокупателя.Ссылка КАК ЗаказПокупателяПоОснованию
ИЗ Документ.ЗаказПокупателя КАК ЗаказПокупателя
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЗаказПокупателя КАК ЗаказПокупателяДляФильтра
    ПО ЗаказПокупателя.ДокументОснование = &Основание И ЗаказПокупателя.Ссылка = ЗаказПокупателяДляФильтра.Ссылка

Вопрос: который из них оптимальнее (быстрее) и почему?...
1 acanta
 
19.03.21
23:06
Имхо первый. А зачем две неиндексируемых выборки может быть лучше одной неиндексируемой выборки?
2 DAFA
 
19.03.21
23:22
2) использование где в запросе не оптимально .по памяти
3 Cthulhu
 
19.03.21
23:39
(1): см.(2) поэтому вопрос и возник...
4 acanta
 
19.03.21
23:42
Спасибо, видимо чукча не читатель...
5 H A D G E H O G s
 
19.03.21
23:51
6 тук-тук
 
19.03.21
23:52
(3) в % какая разница получается ?
и тут я задумался о выборке из табличной части по ссылке когда выборка сильно жирнее
7 youalex
 
19.03.21
23:55
полагаю, запросописатель просто увлекся конструктором. Побочный эффект, бывает
8 acanta
 
19.03.21
23:57
(6) из табличной части РН по номенклатуре, например
9 Cthulhu
 
20.03.21
00:06
(6): хз, поэтому (тоже) и спросил
(7): нет.
все ещё жду ответа
10 youalex
 
20.03.21
00:27
ЗаказПокупателя.ДокументОснование  - входит в критерий отбора?
11 H A D G E H O G s
 
20.03.21
00:37
(9) Конечно 2 запрос - дичь.
12 rphosts
 
20.03.21
05:02
(0) ну смотри, у тебя первый запрос по 1 табличке, причем условие по неиндексированному столбцу (если специально не индексировал)... по табличке есть кластерный индекс... профигачит всю табличку... (если у тебя за много лет документы возможно доп. условие ЗаказПокупателя.Дата >= &ДатаОснования прилично ускорит), а второй ты тащишь ещё 1 таблицу в запрос и начинаешь соединять по этому неиндексированному столбцу. Ну жесть-же наркомановская!
13 mistеr
 
20.03.21
11:35
(12) Самое странное, что это соединение в о2-м запросе ни смысла, ни информации не добавляет. Только накладные расходы.
14 Документовед
 
20.03.21
11:42
(0) А они не преобразуются в SQL запрос с оптимизацией?
15 acht
 
20.03.21
11:48
16 rphosts
 
20.03.21
11:55
(13) угу, даже если поле соединения проиндексировано.
17 Конструктор1С
 
20.03.21
12:16
(2) этоты про СУБД 90-х?