与使用SQL查询有关

时间:2018-06-24 08:36:11

标签: mysql sql oracle-sqldeveloper

在oracle sql中,如何仅获取4月份的新添加客户的数量,并且可以并确保他们在前几个月不在那里

SELECT CUSTOMER ID , COUNT(*)
FROM TABLE
WHERE DATE BETWEEN '1-APR-2018' AND '31-MAY-2018' AND ... 

如果我们提供max(日期)和min(日期),我们可以比较更大的日期以检查此客户是否是新客户,对吗?

预期输出为月计数                   四月-                    可能---

应显示这两个月有多少新客户加入的确切计数

1 个答案:

答案 0 :(得分:0)

一种方法是使用聚合:

select customer_id, min(date) as min_date
from t
group by customer_id
having min(date) >= date '2018-04-01 and
       min(date) < date '2018-06-01';

这将获得客户列表(您的查询似乎正在这样做)。要获得计数,只需使用count(*)并将其设为子查询即可。