每组保持顺序的最小值和最大值

讨厌的

我在Redshift中有一个关于分组的小问题;我有一个如下表:

输入

VALUE       CREATED       UPDATED
------------------------------------
1        '2020-09-10'   '2020-09-11'
1        '2020-09-11'   '2020-09-13'
2        '2020-09-15'   '2020-09-16'
1        '2020-09-17'   '2020-09-18'

我想获得以下输出:

VALUE       CREATED       UPDATED
------------------------------------
1        '2020-09-10'   '2020-09-13'
2        '2020-09-15'   '2020-09-16'
1        '2020-09-17'   '2020-09-18'

如果我按值进行简单的“最大”和“最大”日期分组,则无法使用。

戈登·利诺夫

这是一个空白与孤岛问题的例子。如果数据中没有时间间隔,那么行号的不同是一个简单的解决方案:

select value, min(created), max(updated)
from (select t.*,
             row_number() over (order by created) as seqnum,
             row_number() over (partition by value order by created) as seqnum_2
      from t
     ) t
group by value, (seqnum - seqnum_2)
order by min(created);

为什么这行得通,有点棘手的解释。但是,如果您查看子查询的结果,则会看到行号之间的差异如何识别具有相同的相邻行value

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

每组的最小值和最大值

来自分类Dev

找出每组内的最大值和最小值

来自分类Dev

最小值和最大值

来自分类Dev

数组的最小值和最大值,始终保持相同的值

来自分类Dev

获取Clojure中的最大值和最小值

来自分类Dev

查找函数的最小值和最大值

来自分类Dev

数组中的Java最小值和最大值

来自分类Dev

在列表中交换最大值和最小值

来自分类Dev

使用最小值和最大值的置信带

来自分类Dev

使用awk的最大值和最小值

来自分类Dev

列表集合中的最小值和最大值

来自分类Dev

在.json中查找最大值和最小值

来自分类Dev

awk查找数组的最小值和最大值

来自分类Dev

SQL本地最小值和最大值

来自分类Dev

dygraph:显示最大值和最小值

来自分类Dev

SQL查询最小值和最大值

来自分类Dev

Google图表上的最大值和最小值

来自分类Dev

确定滑块范围的最小值和最大值

来自分类Dev

gnuplot:如何绘制最大值和/或最小值

来自分类Dev

铲斗以最大值和最小值排序

来自分类Dev

列的最大值和最小值之间的差异

来自分类Dev

熊猫的最大值和最小值

来自分类Dev

地址范围的最小值,最大值和步长

来自分类Dev

数学最小值和最大值返回NaN

来自分类Dev

元组列表中的最小值和最大值

来自分类Dev

合并行并取最小值和最大值

来自分类Dev

在列表中获取最小值和最大值

来自分类Dev

使用awk提取最大值和最小值

来自分类Dev

NSInterger最大值和最小值