You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle中识别具有连续12个月日期的ID

问题需求

我有一张包含id和date列的表,需要为日期满足特定条件的ID计算统计值:

  • 若某ID的日期包含2021年1月至3月、2021年6月至2022年6月这两个区间,则统计该ID的连续12个月数量
  • 不满足上述条件的ID,统计值设为0

现有SQL代码

SELECT DISTINCT id,
COUNT(DISTINCT TRUNC(date,'MONTH'))
OVER(PARTITION BY id) AS Continuous_Month_Count
FROM Table1
WHERE date BETWEEN '01-JAN-2021' AND '31-DEC-2022'

预期结果表

表包含两列:

  • id:唯一标识字段
  • Continuous_Month_Count:符合条件的ID显示连续12个月的统计数量,不符合条件的显示0

数据集说明

数据集包含id和date两列,存储了不同ID对应的日期记录,日期覆盖2021年至2022年的多个月份。

内容的提问来源于stack exchange,提问作者MDMP

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 19:03:23