在一个时间窗口中查询结果,而在另一个时间窗口中不存在

汤姆·N

以下查询有效,但我想稍作修改。

照原样,它将从客户表中选择所有不在该文件中的上一个函数数组中的客户(因此,请选择“ NOT IN($ dealerNum')”。它将对所有其他客户运行查询,并检索他们的如果他们在过去6个月内的12个月内有订单,则为数字(我正在18个月的窗口内工作)。

我需要对此稍作更改。我仍然想在不在先前阵列中的任何客户上运行它。但是,我想检索最近6个月内有订单但没有12个月内有订单的任何客户的数量。基本上表明他们至少在当年/ 12个月内活跃,并且在最近6个月内一直活跃。

希望这是有道理的。这是现有的查询,我不确定是否最好/最合理的方式来修改WHERE以处理此问题

SELECT c.customerNumber
  FROM Customers C
INNER JOIN Orders G ON C.CustomerNumber = G.Customer
WHERE c.customerNumber NOT IN ($dealerNum)
    AND C.date BETWEEN CURRENT_DATE - 18 MONTHS AND CURRENT_DATE - 6 MONTHS
GROUP BY C.customerNumber
    HAVING COUNT(*) > 0
安多玛
select  c.customerNumber
from    Customers c
join    Orders o
on      c.CustomerNumber = o.Customer
where   c.customerNumber not in ($dealerNum)
group by
        c.customerNumber
having  count(case when o.date > current date - 6 months then 1 end) > 0
        and count(case when o.date between current date - 18 months and 
                            current_date - 6 months then 1 end) = 0

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在一个时间窗口中找到多个变量的同步增加?

条件格式(如果一个时间大于另一个时间)

从另一个时间减去一个时间字符串

在Mysql中,如何在一个时间窗口中连续数天取平均值?

Pyspark:获取一个时间窗口之间的行数

硒:谷歌搜索结果在一个时间窗口内的西班牙语

按键分组并使用 Spark/Scala 有效地找到在特定时间窗口中发生的事件的前一个时间戳

检查一个时间范围是否进入另一个时间范围

将一个时间范围缩小到另一个时间范围的算法

如何在 Oracle 中从另一个时间戳中减去一个时间戳

检查日期是否在另一个时间段中已经存在

Flink流:在一个窗口中,在另一个窗口中查找状态

从两个日期时间之间的时差返回另一个时间

如何从python中的时间列中删除一个时间点到另一个时间点的时间戳

另一个窗口中的异步函数

在另一个窗口中显示QProcess输出

如何在C#中从另一个时间中减去时间?

在另一个时间之前/之后寻找最近的时间

在另一个时间戳之前计算时间戳数量的更快方法

提取时间并比较是否大于另一个时间

如何在PLSQL中检查时间是否大于或小于另一个时间

用另一个时间序列更新时间序列

输入多个时间范围然后返回所有另一个时间范围

Pandas-将默认日期时间更改为另一个时间

在另一个窗口中通过另一个窗口中的代码访问进度栏

Spark结构化流分组窗口-我希望第一个时间间隔从第一个时间戳开始

如何使用Spark Streaming读取流并在一个时间窗口内找到IP?

Kafka流和开窗以在一个时间窗口内保持计数

Kivy:从另一个弹出窗口中关闭一个弹出窗口