【问题标题】:Oracle SQL sum transactions by distinct customer idOracle SQL 按不同的客户 ID 对事务求和
【发布时间】:2016-11-10 10:04:13
【问题描述】:

我需要根据不同的客户 ID 选择交易列的总和、交易的计数。我尝试了一些嵌套查询以及类似以下内容:

select distinct(customer_id), sum(tran_amt), count(tran)
from tran_table
inner join tender_table;

tender_table 有客户 ID,所以我必须加入它。

【问题讨论】:

    标签: sql oracle


    【解决方案1】:

    您正在使用组函数,但您没有“group by”子句,我认为这会给您正确的答案:

    选择 customer_id、SUM(tran_amt)、COUNT(tran) FROM tran_table INNER JOINtender_table 按客户 ID 分组;

    【讨论】:

      【解决方案2】:

      我猜你想要这样的东西:

      select te.customer_id, sum(t.tran_amt), count(*)
      from tran_table t inner join
           tender_table te
           on t.?? = te.??
      group by te.customer_id;
      

      您需要join 条件和group by 子句。 ?? 用于join 的列,您的问题没有指定。

      【讨论】:

        【解决方案3】:

        试试这个:

        选择 tb_tran.customer_id, sum(tran_amt), count(tran) 从 tran_table tb_tran 内连接招标表 tb_tender 在 tb_tran.customer_id = tb_tender.customer_id 按 tb_tran.customer_id 分组;

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2016-04-27
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多