Группировка колонок

1. petroglif 30.07.21 19:58 Сейчас в теме
Доброго времени суток. Подскажите, как решить задачу? Есть выборка запроса из 3 колонок. Нужно сначала сгруппировать по первой колонке, по второй выбрать максимум из оставшегося, а в третьей оставить то, что соответствует второй колонке. Каким образом это можно реализовать? Никак не могу придумать что делать с 3й колонкой. Пример кода привожу:

ВЫБРАТЬ
	ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура КАК Номенклатура,
	ВыручкаИСебестоимостьПродажОбороты.ЗаказКлиента.Дата КАК ЗаказКлиентаДата,
	ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиСНДСРеглОборот / ВыручкаИСебестоимостьПродажОбороты.КоличествоОборот КАК ПоследняяЦенаПродажи
ИЗ
	РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты() КАК ВыручкаИСебестоимостьПродажОбороты
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. oleg-x 26 30.07.21 23:08 Сейчас в теме
(1) Понятно, что ничего не понятно.
Что значит выбрать максимум из оставшегося. Если группируются данные, то ничего остаться не может. Пример бы хоть привели.
3. BackinSoda 31.07.21 02:56 Сейчас в теме
Пример интересный, сравнивать дату с ценой :)
Если считать, что " а в третьей оставить то," как "либо оно равно либо там ничего", то получится, что-то вроде:
Выбрать А, Б, Ц  Поместить ИсходнаяТаб из &ВремТч;
выбрать А, МАКСИМУМ(Б) ПОМЕСТИТЬ Первая  из ИсходнаяТаб  сгруппировать по А;
Выбрать Первая.А, Первая.Б, Исходная.Ц Из Первая как Первая Левое соединение ИсходнаяТаб по Первая.А=ИсходнаяТаб.А и Первая.Б=ИсходнаяТаб.Б и Первая.Б = ИсходнаяТаб.Ц
4. petroglif 31.07.21 09:33 Сейчас в теме
Приведу пример. На изображении вверху исходные данные. Внизу конечный результат. Короче, мне нужно получить последнюю цену продажи для каждой номенклатуры
Прикрепленные файлы:
5. BackinSoda 31.07.21 21:34 Сейчас в теме
(4) у вас пример значит с ошибкой, ибо по ном1 это не последняя цена
6. oleg-x 26 01.08.21 00:02 Сейчас в теме
(4) Запрос в несколько этапов:
1) Сделать выборку и поместить во временную таблицу
2) Во втором пакете запроса сгруппировать временную таблицу по номенклатуре и дате (максимум) и поместить во временную таблицу.
3) Соединить вторую таблицу с первой и поместить во временную таблицу
4) Сгруппировать последнюю таблицу по номенклатуре, дате и цене (максимум или минимум), так как в один день могут продавать по разным ценам.
Готово.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот