|
Группировка или вложенный запрос | ☑ | ||
---|---|---|---|---|
0
abask
14.01.19
✎
17:18
|
Есть номенклатура и несколько видов цен
как получить номенклатуру и минимальную цену с указанием вида цены? пытаюсь сделать так: ВЫБРАТЬ Номен.Ссылка КАК Ссылка, МИНИМУМ(Цены.Цена) КАК Цена, Цены.ВидЦен КАК ВидЦен ИЗ Справочник.Номенклатура КАК Номен ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК Цены ПО (Цены.Номенклатура = Номен.Ссылка) ГДЕ Номен.ЭтоГруппа = ЛОЖЬ И Цены.Цена <> 0 СГРУППИРОВАТЬ ПО Номен.Ссылка, Цены.ВидЦен Предсказуемо выводит мне все виды цен (не только минимум) если делаю так: ВЫБРАТЬ Номен.Ссылка КАК Ссылка, МИНИМУМ(Цены.Цена) КАК Цена ИЗ Справочник.Номенклатура КАК Номен ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК Цены ПО (Цены.Номенклатура = Номен.Ссылка) ГДЕ Номен.ЭтоГруппа = ЛОЖЬ И Цены.Цена <> 0 СГРУППИРОВАТЬ ПО Номен.Ссылка Выводит минимум, но не понятно тогда какой вид цены как передать вид цены? Вложенный запрос делать? или можно как-то одним обойтись? |
|||
1
Ёпрст
14.01.19
✎
17:30
|
(0)либо первый запрос, либо последний с условием Где видЦен =&НужныйТебеВидЦены
|
|||
2
abask
14.01.19
✎
17:41
|
(1) Я не знаю какой вид цены
Нужно выбрать минимальную цену из тех что есть |
|||
3
Buster007
14.01.19
✎
17:45
|
чем отличается твоя задача, от получения последней цены на разные периоды?
|
|||
4
FIXXXL
14.01.19
✎
17:45
|
(0) что хочешь получить в случае одинакового числа Цена по двум(и более) ВидЦен?
если пофиг, делаешь ВТ Номенклатура-Цена и ее соединяешь с регистром цен по Цена-Номенклатура и группируешь Номенклатура-Цена-Мин(ВидЦен) |
|||
5
abask
14.01.19
✎
17:54
|
(4) а если два товара с одинаковой минимальной ценой как он определит какой товар мне нужен?
Я ж не смогу соединить по двум условиям, и по номенклатуре и по цене? Или я не понял мысль? |
|||
6
Вафель
14.01.19
✎
18:00
|
так этоже классическая задача на срез последних.
хороший программист должне пореди ночи встать и отруки такой запрос написать |
|||
7
FIXXXL
14.01.19
✎
18:02
|
(5) что мешает соединить две таблицы по двум полям?
|
|||
8
VladZ
14.01.19
✎
18:03
|
(0) С каким смыслом используешь выборку:
ИЗ Справочник.Номенклатура КАК Номен ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК Цены ??? |
|||
9
mistеr
14.01.19
✎
18:08
|
(0) Первый запрос - срез последих в ВТ.
Второй запрос - определяешь минимальную цену, и соединяешь еще раз с ВТ, чтобы узнать вид цен. Справочник можно вообще не трогать. (7) Страшно наверное. |
|||
10
abask
14.01.19
✎
18:42
|
Спасибо (4) (7) и (9)
вот что получилось: ВЫБРАТЬ ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура, МИНИМУМ(ЦеныНоменклатурыСрезПоследних.Цена) КАК Цена ПОМЕСТИТЬ табМинЦен ИЗ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних СГРУППИРОВАТЬ ПО ЦеныНоменклатурыСрезПоследних.Номенклатура ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ табМинЦен.Номенклатура КАК Номенклатура, табМинЦен.Цена КАК Цена, ЦеныНоменклатурыСрезПоследних.ВидЦен КАК ВидЦен ИЗ табМинЦен КАК табМинЦен ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних ПО (ЦеныНоменклатурыСрезПоследних.Номенклатура = табМинЦен.Номенклатура И ЦеныНоменклатурыСрезПоследних.Цена = табМинЦен.Цена) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |