У меня есть две таблицы
TableA
Custid prodid Amt1 1 10 200 2 20 300 3 10 400 4 30 300 5 20 400 6 30 200
TableB
prodid Amt2 10 100 20 200 30 300
и я хочу суммировать всю сумму по группе. Кто-нибудь может дать мне и ANSI и Tsql запросы?
SELECT a.prodid,sum(a.Amt1 + b.Amt2) as AmtSum FROM TableA a JOIN TableB b ON (a.prodid = b.prodid) GROUP BY a.prodid;
попробуйте это ... Я думаю, что это также будет работать, если какой-то идентификатор продукта отсутствует в TABLEB
SELECT a.prodid,SUM(a.Amt1),SUM(b.Amt2) FROM TableA AS a left outer JOIN TableB AS b ON a.prodid = b.prodid GROUP BY a.prodid
Я считаю, что это будет работать где угодно:
SELECT a.Custid,a.prodid,sum(a.Amt1 + b.Amt2) as AmtSum FROM TableA a JOIN TableB b ON (a.prodid = b.prodid) GROUP BY a.Custid,a.prodid;
Как насчет этого? : -)
ВЫБРАТЬ СУММУ (a.Amt1), СУММУ (b.Amt2) ОТ (Таблица A В КАЧЕСТВЕ ВНУТРЕННЕГО СОЕДИНЕНИЯ Таблица B КАК ВКЛ a.prodid = b.prodid) GROUP BY a.prodid