Помогите с запросом.Как из регистра сведений ЦеныНоменклатуры получить среднее трех последних значений?
---
Попробуйте что-нибудь вроде этого:

```1c
    ВЫБРАТЬ
    ЦеныНоменклатурыСрезПоследних.Период,
    ЦеныНоменклатурыСрезПоследних.ТипЦен,
    ЦеныНоменклатурыСрезПоследних.Номенклатура,
    ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры,
    ЦеныНоменклатурыСрезПоследних.Цена
    ПОМЕСТИТЬ ВТ_ПервыйСрез
    ИЗ
    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(
    ,
    Номенклатура В (&СписокНоменклатуры)
    И ТипЦен = &ТипЦен_Базовые) КАК ЦеныНоменклатурыСрезПоследних
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ЦеныНоменклатурыСрезПоследних.Период,
    ЦеныНоменклатурыСрезПоследних.Номенклатура,
    ЦеныНоменклатурыСрезПоследних.ТипЦен,
    ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры,
    ЦеныНоменклатурыСрезПоследних.Цена
    ИЗ
    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(
    ,
    Номенклатура В (&СписокНоменклатуры)
    И ТипЦен = &ТипЦен_Базовые
    И НЕ (Период, ТипЦен, Номенклатура, ХарактеристикаНоменклатуры) В
    (ВЫБРАТЬ
    ВТ_ПервыйСрез.Период,
    ВТ_ПервыйСрез.ТипЦен,
    ВТ_ПервыйСрез.Номенклатура,
    ВТ_ПервыйСрез.ХарактеристикаНоменклатуры
    ИЗ
    ВТ_ПервыйСрез КАК ВТ_ПервыйСрез)) КАК ЦеныНоменклатурыСрезПоследних
```

Полностью запрос писать не стал. Думаю принцип понятен. Ну и аналитика получаемых данных и получаемые ресурсы уже в зависимости от вашей задачи.
---
погуглите как сделать срез последних без использования виртуальной таблицы, думаю по аналогии можно сделать будет.
---
Попробуйте что-нибудь вроде этого:

```1c
    ВЫБРАТЬ
    ЦеныНоменклатурыСрезПоследних.Период,
    ЦеныНоменклатурыСрезПоследних.ТипЦен,
    ЦеныНоменклатурыСрезПоследних.Номенклатура,
    ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры,
    ЦеныНоменклатурыСрезПоследних.Цена
    ПОМЕСТИТЬ ВТ_ПервыйСрез
    ИЗ
    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(
    ,
    Номенклатура В (&СписокНоменклатуры)
    И ТипЦен = &ТипЦен_Базовые) КАК ЦеныНоменклатурыСрезПоследних
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ЦеныНоменклатурыСрезПоследних.Период,
    ЦеныНоменклатурыСрезПоследних.Номенклатура,
    ЦеныНоменклатурыСрезПоследних.ТипЦен,
    ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры,
    ЦеныНоменклатурыСрезПоследних.Цена
    ИЗ
    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(
    ,
    Номенклатура В (&СписокНоменклатуры)
    И ТипЦен = &ТипЦен_Базовые
    И НЕ (Период, ТипЦен, Номенклатура, ХарактеристикаНоменклатуры) В
    (ВЫБРАТЬ
    ВТ_ПервыйСрез.Период,
    ВТ_ПервыйСрез.ТипЦен,
    ВТ_ПервыйСрез.Номенклатура,
    ВТ_ПервыйСрез.ХарактеристикаНоменклатуры
    ИЗ
    ВТ_ПервыйСрез КАК ВТ_ПервыйСрез)) КАК ЦеныНоменклатурыСрезПоследних
```

Полностью запрос писать не стал. Думаю принцип понятен. Ну и аналитика получаемых данных и получаемые ресурсы уже в зависимости от вашей задачи.
---
спасибо. Немного не так сделала, но все получилось.
---
Обязательно чисто запросом? Я бы, наверное, выбирала все, сортировала бы дату по убыванию и обрабатывала 3 первых значения. Хотя, конечно, извращение.
---
можно , наверно, и не запросом. Вопрос как?