构建sql查询以过滤来自一个表的数据的问题

时间:2017-03-17 09:55:19

标签: sql oracle spring-data-jpa

我是SQL的新手,我在Oracle中定义了以下表:

enter image description here

基本上我需要创建一个执行以下操作的存储过程:

显示代码,金额,货币和发生字段。

然而,具有相同货币的相同代码会添加金额并在一行中显示它们的出现次数,例如从上表的数据中得出的结果应为:

  1. 代码:TS-4.1,金额:150,货币:USD,出现次数:2
  2. 代码:TS-4.1,金额:25,货币:欧盟,出现次数:1
  3. 代码:TS-2.1,金额:225,货币:美元,出现次数:1
  4. ......其他结果

    知道如何实现这一目标吗?

1 个答案:

答案 0 :(得分:1)

SELECT CODE, SUM(AMOUNT), CURRENCY, COUNT(*) as Occurrence
FROM <your_table>
GROUP BY CODE, CURRENCY

您可以使用GROUP BY。

这会根据代码和金额对您的条目进行分组,并显示具有相同代码,金额和货币的行数。