仅显示过去12个月内已交易的所有ID的总和

时间:2018-01-23 17:56:01

标签: sql oracle date

img {
  opacity: 1;
  transition: opacity 0.3s;
}

img[data-src] {
  opacity: 0;
}

嗨我希望结果只包含过去12个月内销售的交易计数。我该怎么办?

我有最大,因为有多个相同ID的实例,因此它们不是唯一的。

我没有个别交易日期。我只有最后一个交易日期字段

2 个答案:

答案 0 :(得分:1)

您可以使用months_between函数直接使用12个月:

select id,id_name, MAX(last_login_date), SUM(transaction_count), mAX(last_transaction_date)
  from sales
 where months_between(trunc(sysdate),last_transaction_date) <= 12
 group by id, id_name;

答案 1 :(得分:1)

如果您需要选择一个月内的所有交易(当月),您可以使用以下结构:

select id
     , id_name
     , Max(last_login_date)
     , Sum(transaction_count)
     , Max(last_transaction_date)
  from sales
 where last_transaction_date >= add_months(trunc(sysdate,'mm'),-11)
 group by id, id_name;
相关问题