У меня есть следующий запрос:SQL получить внутреннее значение запроса
select SUM(balvalues) from
(
select ib.CURBAL as balvalues from invbalances ib join inventory on ib.itemnum = inventory.itemnum and ib.location = inventory.location where inventory.itemnum = 'XMP-3500' and ib.siteid = 'BEDFORD'
UNION ALL
SELECT -1 * SUM(QUANTITY) from matrectrans where itemnum = 'XMP-3500' and TRANSDATE >= '16-SEP-99' and tostoreloc = 'CENTRAL'
UNION ALL
SELECT -1 * SUM(QUANTITY) from matusetrans where itemnum = 'XMP-3500' and TRANSDATE >= '16-SEP-99' and storeloc = 'CENTRAL'
);
Однако я хочу добавить еще один столбец в наружном select (itemnum)
, так что я могу join
с другим запросом:
select SUM(balvalues), ib.itemnum
Я попробовал добавить itemnum к каждому внутреннему выбору, чтобы убедиться, что у меня одинаковое количество выходных столбцов для всех unions
и внешний, но у меня все еще есть эта ошибка:
ORA-00904: "IB"."ITEMNUM": invalid identifier
Как я могу получить значение itemnum из подзапроса?
Я попробовал запрос и добавил группу по всем внутренним запросам, но получаю эту ошибку: ORA-00979: не выражение GROUP BY – AuthenticReplica
Попробуйте изменить внутренний запрос на 'SELECT SUM (-1 * QUANTITY) как balvalues, itemnum ... ' – user1717259
Я пробовал это и до сих пор получаю ту же ошибку:/ – AuthenticReplica