生成sql查询以从一个表中筛选数据的问题

生成sql查询以从一个表中筛选数据的问题,sql,oracle,spring-data-jpa,Sql,Oracle,Spring Data Jpa,我是SQL新手,在Oracle中定义了下表: 基本上,我需要创建一个存储过程来执行以下操作: 显示代码、金额、货币和发生字段 但是,具有相同货币的相同代码会添加金额,并在一行中显示金额及其发生情况,例如,根据上表的数据,结果应为: 代码:TS-4.1,金额:150,币种:美元,发生额:2 代码:TS-4.1,金额:25,币种:欧盟,发生额:1 代码:TS-2.1,金额:225,币种:美元,发生额:1 …其他结果 您知道如何做到这一点吗?选择代码、金额、币种、计数(*)作为事件 SELECT C

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

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

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

但是,具有相同货币的相同代码会添加金额,并在一行中显示金额及其发生情况,例如,根据上表的数据,结果应为:

  • 代码:TS-4.1,金额:150,币种:美元,发生额:2
  • 代码:TS-4.1,金额:25,币种:欧盟,发生额:1
  • 代码:TS-2.1,金额:225,币种:美元,发生额:1
  • …其他结果

    您知道如何做到这一点吗?

    选择代码、金额、币种、计数(*)作为事件
    
    SELECT CODE, SUM(AMOUNT), CURRENCY, COUNT(*) as Occurrence
    FROM <your_table>
    GROUP BY CODE, CURRENCY
    
    从…起 按代码、货币分组
    您可以使用分组方式


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

    您忘记了
    货币
    对上述查询进行了测试,但TS-4.1出现了3次,而不是两次,并且没有添加它们