Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
matviishyn Member Откуда: Сообщений: 8 |
Есть вопрос: нужно вывести сумму элементов(sztuk) из двух разных таблиц по полю poz_lp,но если есть два поля poz_lp с одинаковым id(poz_lp из одной таблицы = 9, и с другой = 9) тогда нужно сделать из них одну и посчитать сумму SELECT rpo.poz_lp,SUM(rpo.sztuk) FROM dbo.rep_szklenia rsz JOIN dbo.rep_pozycje rpo ON rsz.poz = rpo.poz GROUP BY rpo.poz_lp UNION SELECT rpo.poz_lp,SUM(rpo.sztuk) FROM dbo.rep_skrzydla rsk JOIN dbo.rep_pozycje rpo ON rsk.poz = rpo.poz JOIN dbo.moskit m ON m.nr_art = rsk.zaluzja GROUP BY rpo.poz_lp Результат poz_lp sum 1 4 6 1 7 1 8 3 9 1 9 2 Должно быть poz_lp sum 1 4 6 1 7 1 8 3 9 3 |
18 ноя 15, 12:29 [18434714] Ответить | Цитировать Сообщить модератору |
Glory Member Откуда: Сообщений: 104751 |
Ну так сначала UNION, а потом уже SUM. Или еще раз запрос SUM для вашего случая. |
18 ноя 15, 12:33 [18434751] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47063 |
SELECT poz_lp, SUM(sztuk) FROM ( SELECT rpo.poz_lp,rpo.sztuk FROM dbo.rep_szklenia rsz JOIN dbo.rep_pozycje rpo ON rsz.poz = rpo.poz UNION ALL SELECT rpo.poz_lp,rpo.sztuk FROM dbo.rep_skrzydla rsk JOIN dbo.rep_pozycje rpo ON rsk.poz = rpo.poz JOIN dbo.moskit m ON m.nr_art = rsk.zaluzja ) T GROUP BY poz_lp; |
18 ноя 15, 12:33 [18434752] Ответить | Цитировать Сообщить модератору |
matviishyn Member Откуда: Сообщений: 8 |
Спасибо! |
18 ноя 15, 12:38 [18434779] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |