【发布时间】:2021-08-16 02:37:39
【问题描述】:
我正在尝试将日期范围分组在一起,以便按批处理作业对报告进行排序。但是,批次 ID 可能每年重复两次,因此我必须按日期和批次 ID 分组。我的困境是我无法获得批次 ID 的范围
假设我有这些日期值
1/1/2021
5/1/2021
8/1/2021
3/7/2020
4/2/2019
我想得到
8/12/2020 - 8/1/2021
3/6/2020 - 3/7/2020
4/1/2019 - 4/2/2019
第一次在 Stack Overflow 和移动设备上寻求帮助。原谅格式
【问题讨论】:
-
这似乎是一个类似的问题:stackoverflow.com/questions/7616860/…
-
我正在尝试每月分组一次,而他只有 2 天。另外,我似乎无法将日期时间用作数据类型
-
我完全不知道结果集与样本数据有什么关系。日期已定。你说某事一年发生一两次,然后 2021 年有三行。非常混乱。
-
给定的日期数据好像是
day/month/year的形式,开始day/month/year是根据每个组中最后一个day/month/year通过MAX(x) - INTERVAL '1' MONTH计算出来的。所以这对是MAX(x) - INTERVAL '1' MONTH to MAX(x) -
我怀疑所需的结果会导致问题,只需从该月找到的
MAX(x)中减去1 MONTH,导致与上个月的实际日期重叠。我的建议是只使用每个月组的开始和结束作为对或类似的东西。
标签: sql group-by oracle-sqldeveloper