0
Как суммировать сумму из двух запросов, используя объединение всех в один столбец и одну строку? Сейчас он разбит на две строки, но я хочу, чтобы разница в столбце TotalQty находилась в одной строке.SQL Сумма сумм из двух объединений в одну строку
select sum(begsdquantity)as 'TotalQty', CUSIPNumber, ForeignCountry
from
(
select sum (abs(b.begsdquantity)) begsdquantity, B.CUSIPNumber, C.FOREIGNCOUNTRY
from USBI.vw_NameAddressBase a
inner join USBI.vw_StockRecord b on a.FirmAccountId = b.FirmAccountId
inner join USBI.vw_SecurityBase c on b.FirmCUSIPId = c.FirmCUSIPId
WHERE '20160229' between a.EffectiveDate and a.ExpirationDate
AND '20160229' between b.EffectiveDate and b.ExpirationDate
and '20160229' between c.EffectiveDate and c.ExpirationDate
AND c.ForeignCountry NOT IN ('US', 'VA', 'RQ', 'VQ')
and b.CUSIPNumber = '654902204'
and b.AcctType in ('0')
and b.LocMemo = 's'
GROUP BY B.CUSIPNumber, C.ForeignCountry
union ALL
select sum(-b.begsdquantity) begsdquantity, B.CUSIPNumber, C.ForeignCountry
from USBI.vw_NameAddressBase a
INNER join USBI.vw_StockRecord b on a.FirmAccountId = b.FirmAccountId
inner join USBI.vw_SecurityBase c on b.FirmCUSIPId = c.FirmCUSIPId
where a.RestrDate in ('99999999')
AND a.CloseRestrictInd in ('C')
AND c.ForeignCountry NOT IN ('US', 'VA', 'RQ', 'VQ')
and '20160229' between a.EffectiveDate and a.ExpirationDate
and '20160229' between b.EffectiveDate and b.ExpirationDate
and '20160229' between c.EffectiveDate and c.ExpirationDate
and b.CUSIPNumber = '654902204'
GROUP BY B.CUSIPNumber, C.ForeignCountry
) t
group by begsdquantity, CUSIPNumber, ForeignCountry
ORDER BY CUSIPNumber
Мои результаты:
Я ищу разницу колонны TotalQty из 96061 в одну колонку и одну строку. Возможно ли это или что я делаю неправильно?
Это сделал трюк. Я сошел с ума. Спасибо. – BIReportGuy