|
Соединение првых строк в запросе | ☑ | ||
---|---|---|---|---|
0
zavyzka
13.06.18
✎
19:38
|
Есть 2 таблицы в запросе.
Таблица1: Склад1| Товар1 Склад1| Товар2 Склад2| Товар1 Склад2| Товар2 Таблица2: Склад1| 5 Склад2| 10 При соедининии таблиц хочу получить таблицу: Склад1| Товар1|5 Склад1| Товар2|NULL Склад2| Товар1|10 Склад2| Товар2|NULL Т.е. хочу что бы соединение происходило по первым найденым строкам и последующие строки уже не объединялись. Возможно есть какое-то простое решение? |
|||
1
Малыш Джон
13.06.18
✎
19:43
|
А как ты определил, что именно эти строки первые?
|
|||
2
zavyzka
13.06.18
✎
19:47
|
(1) первая или последняя не имеет значения, т. е. можно что бы результат был такой:
Склад1| Товар1|5 Склад1| Товар2|NULL Склад2| Товар1|NULL Склад2| Товар2|10 Главное что бы не такой: Склад1| Товар1|5 Склад1| Товар2|5 Склад2| Товар1|10 Склад2| Товар2|10 т. к. потом по суммам будут считаться итоги. |
|||
3
mehfk
13.06.18
✎
19:51
|
SELECT * FROM TAB1 LEFT JOIN (SELECT TAB.Склад,TAB.Товар,TAB2.Количество (SELECT Склад, MIN(Товар) FROM TAB1 GROUP BY Склад) AS TAB LEFT JOIN TAB2 ON TAB1.Склад = TAB2.Склад) AS TAB ON TAB1.Товар = TAB.Товар,TAB1.Склад = TAB.Склад
|
|||
4
Малыш Джон
13.06.18
✎
19:53
|
(2) так может потом их и соединять? когда итоги будут считаться? да и никто не мешает потом считать итоги с группировкой по складу. А то сейчас как-то криво постановка задачи выглядит. В запросе все строки равнозначны, а ты сейчас хочешь заполнить разные строки разными способами, а потом тебе считать тоже придется разные строки разными способами.
Но дело твое... Выбирай в ВТшку склады и товары, группируй по складу, а товары - по максимуму. Далее соединяй с этой ВТшкой соединение первых двух таблиц. |
|||
5
zavyzka
13.06.18
✎
20:19
|
(3), (4) спасибо, понял.
(4) правда сейчас думаю, что может быть есть лучшее решение. Мне эти 2 таблицы в конечном итоге нужно вывести в отчет на СКД который должен выглядеть так: Склад1.........5 ---------Товар1 ---------Товар2 Склад2.........10 ---------Товар1 ---------Товар2 т. е. сумм напротив товаров быть не должно. Понятно, что в рабочем отчете колонок будет побольше, может есть какое-то красивое решение на СКД, типа правильно связать наборы данных или Расчтиывать ресурсы по...т.д.? Я пробовал но у меня не взлетело. |
|||
6
Малыш Джон
13.06.18
✎
20:27
|
(5) в СКД в ресурсах поставь выражение
Сумма(ВычислитьВыражениеСГруппировкойМассив("Количество", "Склад")) на уровне склада и выше. На уровне товара поставь 0. И не извращайся в запросе) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |