首页 > 解决方案 > Oracle SQL Developer 如何从另一个查询的结果中获取总和

问题描述

我在这里提出一个我整天都有的问题。

有我的 SQL 查询:

SELECT
    JSON_VALUE(MSGTOSEND_0182,'$.transactionDetails[*].transactionChannelId') as CHANNELTRANSACTION,
    RESP_REFERENCE0182 TRANSACTIONID,
    ACTION0182,
    JSON_VALUE(MSGTOSEND_0182, '$.amount') MONTO
FROM
    POSTING_ONLINE0182 PO
INNER JOIN Z_MAMBU_TRANSACTIONS ZMT 
  ON PO.RESP_REFERENCE0182 = ZMT.TRANSACTIONID
WHERE
    POSTING_RESPCODE0182 = 0
    AND TO_CHAR(REPLACE(ZMT.AMOUNT, ',', '.')) = JSON_VALUE(PO.MSGTOSEND_0182, '$.amount')
GROUP BY    
    JSON_VALUE(MSGTOSEND_0182,'$.transactionDetails[*].transactionChannelId'),
    RESP_REFERENCE0182,
    ACTION0182,
    JSON_VALUE(MSGTOSEND_0182, '$.amount')
ORDER BY
    ACTION0182

结果如下:

1

所以我需要的是获得所有借方的总和,然后是所有贷方,并将它们显示在 2 个不同的行中。我尝试了很多方法和东西,但它不起作用。

这是我需要的一个例子:

2

上面写着 MONTO 我需要第一张图片中以前的 valours 的总和

谢谢!如果有人可以帮助我,那就太好了

标签: sqloraclesum

解决方案


它会是这样的:

select channeltransaction, action0182, sum(MONTO) MONTO
from (your query...)
group by channel_transaction, action0182;

推荐阅读