Имя: Пароль:
1C
1С v8
ЛЕВОЕ СОЕДИНЕНИЕ в запросе
0 дущ
 
23.07.11
21:31
Имеем запрос типа

ВЫБРАТЬ
   РеализацияТоваровУслугТовары.Номенклатура КАК ВидПродукции,
   РеализацияТоваровУслугТовары.Количество КАК Объем,
   ЖДТариф.Сумма КАК ЖДТариф
ИЗ
   Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
       ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
           РеализацияТоваровУслугУслуги.Ссылка КАК Ссылка,
           РеализацияТоваровУслугУслуги.Сумма КАК Сумма
       ИЗ
           Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслугУслуги
       ГДЕ
           РеализацияТоваровУслугУслуги.Номенклатура = &ЖДТариф
       
       ) КАК ЖДТариф
       ПО РеализацияТоваровУслугТовары.Ссылка = ЖДТариф.Ссылка
ГДЕ
   РеализацияТоваровУслугТовары.Ссылка.Проведен
   И РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &НачДата И &КонДата

вот мне интересно, будут ли во вложенном запросе ЖДТариф перебираться все реализации товаров и услуг или интерпретатор "умный" и поймет, что раз соединение левое, то на вложенный запрос нужно наложить условие левого запроса? Т.е. нужно ли в данном примере для ускорения во вложенный запрос включать блок условий?
1 Икогнито
 
23.07.11
21:33
вложенный запрос будет перебирать всю таблицу
2 dimoff
 
23.07.11
21:34
Выведи из вложенного запроса тогда ьон станет умным условие по ЖДТариф перенеси в ПО, тогда интерпретатор враз поумнеет
3 дущ
 
23.07.11
21:42
(1)(2) Спасибо огромное, всё верно.
4 rs_trade
 
23.07.11
22:11
(3) вообще для таких вопросов есть план запроса. смотришь и не гадаешь
5 дущ
 
23.07.11
22:18
(4) Я бы сказал что это всё-таки вопрос по внутренним механизмам платформы, нежели по организации запроса.
6 rs_trade
 
23.07.11
22:21
(5) может быть. но у 1С парсер запросов ни разу не умный. транслирует как написали. у скуля че то пытается понять и оптимизировать.
7 Fragster
 
гуру
24.07.11
00:32
Следующая тема автора - "почему строки двоятся?"
8 Fragster
 
гуру
24.07.11
00:32
(6) имея на входе бред - получить на выходе не бред сложно
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший