|
Требуется получить цену товара и среднюю цену товара одним запросом. | ☑ | ||
---|---|---|---|---|
0
TygarinZmei
08.07.16
✎
11:35
|
Добрый день.
Есть два запроса. Первый берет данные о цене, дне и номенклатуре товара и помещает в виртуальную таблицу и группирует их. Второй берет эти данные из виртуальной таблицы для вывода в отчет. Все это в СКД. Возникла необходимость помимо цены по дням вывести среднюю цену товара. Как я понял в одном запросе можно либо получить цену либо среднюю цену. Возник вопрос как получить оба значения. Спасибо за помощь. ВЫБРАТЬ втДанные.День, втДанные.Номенклатура, втДанные.Цена, втДанные.ДокументПоступления, ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК УстановленнаяЦена ИЗ втДанные КАК втДанные ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних ПО втДанные.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура СГРУППИРОВАТЬ ПО втДанные.День, втДанные.Номенклатура, втДанные.Цена, втДанные.ДокументПоступления, ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) Или так: ВЫБРАТЬ втДанные.День, втДанные.Номенклатура, Среднее(втДанные.Цена) как Цена, втДанные.ДокументПоступления, ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК УстановленнаяЦена |
|||
1
Vladal
08.07.16
✎
12:13
|
Либо цену, либо среднюю....
Соединить их, эти два запроса в один - вытянуть один данные, с ценой, вытянуть среднююю цену, и потом объединить эти таблички по полям |
|||
2
TygarinZmei
08.07.16
✎
12:19
|
(1) Тоесть два запроса в одном все данные и цена , во втором все данные и средняя цена? А как потом объединить? Спасибо.
|
|||
3
mistеr
08.07.16
✎
12:21
|
(0) ВЫЧИСЛИТЬ()
|
|||
4
TygarinZmei
08.07.16
✎
12:24
|
(3) В запросе нет функции вычислить(
|
|||
5
TygarinZmei
08.07.16
✎
13:35
|
Добавил вложенный запрос для вытягивания средней цены. Теперь вместо стоимости в 2.09 выдает 832(
ВЫБРАТЬ втДанные.День, втДанные.Номенклатура, втДанные.Цена, втДанные.ДокументПоступления, ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК УстановленнаяЦена, ВложенныйЗапрос.СредняяЦена ИЗ втДанные КАК втДанные ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних ПО втДанные.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура, (ВЫБРАТЬ СРЕДНЕЕ(втДанные.Цена) КАК СредняяЦена ИЗ втДанные КАК втДанные) КАК ВложенныйЗапрос СГРУППИРОВАТЬ ПО втДанные.День, втДанные.Номенклатура, втДанные.Цена, втДанные.ДокументПоступления, ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0), ВложенныйЗапрос.СредняяЦена Может кто подсказать что не так?(Кроме рук)) |
|||
6
VladZ
08.07.16
✎
13:44
|
(5) Фигню какую-то написал.
|
|||
7
TygarinZmei
08.07.16
✎
13:59
|
Спасибо всем за ответы. Вопрос решен.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |