Имя: Пароль:
1C
1С v8
Оптимизация запроса
,
0 Michael_p2004
 
22.07.16
09:23
Добрый день. Как можно оптимизировать запрос:

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

В профайлере показывает время выполнения 40 сек.
1 Горогуля
 
22.07.16
09:25
что это за такое?
ИЗ
       Документ.РегистрацияСчетаФактуры.СоставНДС
2 beer_fan
 
22.07.16
09:27
Используй временные таблицы вместо вложенного запроса.
3 Michael_p2004
 
22.07.16
09:27
(1) Штатный запрос из "Астор.Ваш Магазин"
4 Горогуля
 
22.07.16
09:27
(3) спасибо, в магазин не пойдём
5 Fragster
 
гуру
22.07.16
09:27
(0)замени на внутреннее соединение
6 Горогуля
 
22.07.16
09:27
фу, плин, глаз замылился
(4) сторно
7 Яплакал
 
22.07.16
09:30
(0) попробуй подзапрос вынести в вирт. таблицу и проиндексируй ссылку 9в твоем случаи эт док основание)
8 Яплакал
 
22.07.16
09:31
(7) + а вообще что там оптимизировать, он простой как 2 рубля, выборка по документам, условие по ссылке, кластерный индекс, все норм. Могу еще порекомендовать профайлером отловить план запросов
9 HardBall
 
22.07.16
09:32
(0) Должен быстро работать.
Индексов наверное не хватает в табличной части
Документ.РегистрацияСчетаФактуры.СоставНДС
10 Fragster
 
гуру
22.07.16
09:33
еще есть прием
Где 1 в (Выбрать .... И Фактура.Документ.ПриходнаяНакладная) = Накладные.Ссылка)
11 Fragster
 
гуру
22.07.16
09:34
Где 1 в (выбрать первые 1 1 из ...)
12 vicof
 
22.07.16
09:39
(7) "подзапрос вынести в вирт. таблицу"
что, простите?
13 Яплакал
 
22.07.16
09:45
(12) да да, временную