|   |   | 
| 
 | То ли группировка, то ли условие. Сама не знаю :))) | ☑ | ||
|---|---|---|---|---|
| 0
    
        Полька 24.03.14✎ 10:22 | 
        ВЫБРАТЬ
 СрокиИсполненияЗаказов.ЗаказПокупателя, СрокиИсполненияЗаказов.Номенклатура, СрокиИсполненияЗаказов.Количество, СрокиИсполненияЗаказов.УтвержденнаяДатаИсполнения, ЗаказыПокупателейОбороты.КоличествоРасход КАК КоличествоОтгружено ИЗ РегистрСведений.итСрокиИсполненияЗаказов КАК СрокиИсполненияЗаказов ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПокупателей.Обороты(, , Авто, ) КАК ЗаказыПокупателейОбороты ПО СрокиИсполненияЗаказов.ЗаказПокупателя = ЗаказыПокупателейОбороты.ЗаказПокупателя И СрокиИсполненияЗаказов.Номенклатура = ЗаказыПокупателейОбороты.Номенклатура Этот запрос работает как надо. Почти :) Нужно добавить отбор, что регистратор должен быть типа Документ.РеализацияТоваровУслуг. Если я добавляю в выборку ЗаказыПокупателейОбороты.Регистратор или ставлю условие, то у меня в выборке отражается для каждой позиции номерклатуры все документы- регистраторы. Если пытаюсь сделать группировку, то туда вылезает все, что есть в разделе "Выбрать". А мне нужно только общее кол-во отгруженного по каждой номенклатуре. | |||
| 1
    
        Нерезидент РФ 24.03.14✎ 10:26 | 
        1. запрос к РегистрСведений.итСрокиИсполненияЗаказов и помещение во временную
 2. запрос к РегистрНакопления.ЗаказыПокупателей.Обороты (в параметрах - отбор по типу регистратора и по таблице из п.1), группировка и помещение во временную 3. временную из п1 соединить с временной из п2 | |||
| 2
    
        Полька 24.03.14✎ 10:28 | 
        (1) я учусь :)
 через временные у меня сделано. Я хотела в один запрос попробовать все запихать. | |||
| 3
    
        Нерезидент РФ 24.03.14✎ 10:34 | 
        (2) не стоит.     | |||
| 4
    
        mikecool 24.03.14✎ 10:37 | 
        (1) что за любовь пихать все во временные таблицы? нет понимания - как связать все в одном запросе?     | |||
| 5
    
        DexterMorgan 24.03.14✎ 10:44 | 
        (4) а у тебя по-видимому всегда можешь сказать какой план выберет оптимизатор СУБД если все нафигачишь в одном запросе и что этот план будет оптимальным?     | |||
| 6
    
        Нерезидент РФ 24.03.14✎ 10:54 | 
        (4) чем проще запрос для понимания тебе, тем проще оптимизатору.     | |||
| 7
    
        vmv 24.03.14✎ 10:57 | 
        а чо не взлетит?
 в ГДЕ ТИПЗНАЧЕНИЯ(ЗаказыПокупателейОбороты.Регистратор) = ТИП(Документ.РеализацияТоваровУслуг) в параметрах виртуальной ТИПЗНАЧЕНИЯ(Регистратор) = ТИП(Документ.РеализацияТоваровУслуг) | |||
| 8
    
        Полька 24.03.14✎ 11:02 | 
        (7) пробовала
 нужно, чтобы выводилось Номенклатура-Отгружено, например Тарелки 10 шт. А тут выводится Тарелки 3 шт Тарелки 7 шт И вдобавок все заказы, по которым не было отргузки не попадают в выборку. | |||
| 9
    
        vmv 24.03.14✎ 11:06 | 
        (8) мне трудно соображать в примере с тарелками, да уже и давно делаю простейший оптимизированный запрос-источник в СКД, а все муки группировок и т.п. средствами настройки СКД
 если нужен вывод не в отчет, а как данные для обработки делаю ветку при компоновке в модуле отчета для вывода в тз. | |||
| 10
    
        DexterMorgan 24.03.14✎ 16:00 | 
        (6) "чем проще запрос для понимания тебе, тем проще оптимизатору."
 Ерунда это все. Оптимизатору нужно знать какое количество полей в таблицах, которые он соединяет. Т.к. виртуальная таблица транслируется во вложенный запрос на sql, то ему труднее выбрать правильный план, поэтому лучше помещать в вт, в данном случае | |||
| 11
    
        DexterMorgan 24.03.14✎ 16:05 | 
        Да кстати, если индексы настроены, РС помещать в вт никакого смысла нет     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |