如何在各种事件序列中找到第一个开始时间?

格雷姆·米勒

我有以下专栏

VehicleIdStatusIdStartTimeComments

数据基本上是对的一系列更改VehicleIdStatusId包括它们发生的时间和注释。在过去的几年中,每辆车都可能多次出现状态ID。数据跨度为数年,但不是5万行的巨大数据集。我们只对每种车辆的每种状态更改的日期时间感兴趣。因此,这意味着我有很多车辆和状态ID的组合,并且依次看到了第一个开始日期。因此,车辆StatusId在两个不同的序列中都有a ,我想要每个序列的最早日期theVehicleId和that StatusId我该怎么办?

我在这里创建了一个SQL小提琴

我看了看RANK() OVER (PARTITION BY [VehicleId],[StatusID] ORDER BY StartTime) AS [Group]等等,但他们似乎没有帮助

输入

VehicleId  | StatusId | StartTime
      1    |     1    | 2010-1-1
      1    |     1    | 2010-1-2
      1    |     2    | 2010-1-3
      1    |     2    | 2010-1-4
      1    |     1    | 2010-1-5
      2    |     1    | 2010-1-2

输出

VehicleId  | StatusId | FirstStartTime
      1    |     1    | 2010-1-1
      1    |     2    | 2010-1-3
      1    |     1    | 2010-1-5
      2    |     1    | 2010-1-2

因此,我基本上需要减少输出行,以仅使每个序列的开始都包含该行的任何更改,除非它是VehcileId或StatusId的更改

戈登·利诺夫

您可以使用不同的行号方法来识别组。然后聚合得到您想要的:

select vehicleId, statusId, min(StartTime) as FirstStartTime
from (select se.*,
             (row_number() over (partition by vehicleId  order by StartTime) -
              row_number() over (partition by vehicleId, StatusId order by StartTime)
             ) as grp
      from StatusEvents se
     ) se
group by grp, statusId, vehicleId
order by vehicleId, FirstStartTime;

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从Postgres的预订中查找第一个免费的开始时间

来自分类Dev

在序列中找到第一个

来自分类Dev

如何在MATLAB的每一行中找到第一个'1'

来自分类Dev

如何在URL中找到第一个参数的indexOf

来自分类Dev

如何在每个后续数字间隔中找到第一个缺失数字?

来自分类Dev

如何在VBA的列中找到大于零的第一个值?

来自分类Dev

如何在算术表达式中找到第一个运算符?

来自分类Dev

如何在水豚中找到第一个空字段?

来自分类Dev

如何在vim中找到单词的第一个大写字母?

来自分类Dev

如何在C ++中找到第一个最大值?

来自分类Dev

如何在井字棋盘中找到第一个获胜组合?

来自分类Dev

如何在算术表达式中找到第一个运算符?

来自分类Dev

如何在表格中找到第一个文本框的值?

来自分类Dev

如何在长路径中找到第一个丢失的目录?

来自分类Dev

如何在字符串中找到第一个元音

来自分类Dev

如何在Ruby中找到字符串的第一个非重复字母?

来自分类Dev

如何在VBA中找到第一个空单元格?

来自分类Dev

如何在对象中找到作为数组的第一个属性?

来自分类Dev

如何在排名较高的张量中找到第一个匹配张量的索引

来自分类Dev

如何在 Django 模板中找到第一个实例

来自分类Dev

如何在列表中找到连续重复数字的第一个索引?

来自分类Dev

在R中找到长度为n的第一个序列

来自分类Dev

活动开始时获取 TabLayout 第一个选项卡的初始选择事件

来自分类Dev

如何在列表python中找到第二个元素和第一个元素的差异

来自分类Dev

如何在R中找到子字符串的第一个唯一的相遇

来自分类Dev

如何在java中找到一维字符串的第一个字符

来自分类Dev

如何在CSS中使用tr类名在tr中找到第一个td?

来自分类Dev

如何在与用户给定前缀匹配的字符串向量中找到第一个单词?

来自分类Dev

如何在x,y点的2D数组中找到第一个极值?

Related 相关文章

  1. 1

    如何从Postgres的预订中查找第一个免费的开始时间

  2. 2

    在序列中找到第一个

  3. 3

    如何在MATLAB的每一行中找到第一个'1'

  4. 4

    如何在URL中找到第一个参数的indexOf

  5. 5

    如何在每个后续数字间隔中找到第一个缺失数字?

  6. 6

    如何在VBA的列中找到大于零的第一个值?

  7. 7

    如何在算术表达式中找到第一个运算符?

  8. 8

    如何在水豚中找到第一个空字段?

  9. 9

    如何在vim中找到单词的第一个大写字母?

  10. 10

    如何在C ++中找到第一个最大值?

  11. 11

    如何在井字棋盘中找到第一个获胜组合?

  12. 12

    如何在算术表达式中找到第一个运算符?

  13. 13

    如何在表格中找到第一个文本框的值?

  14. 14

    如何在长路径中找到第一个丢失的目录?

  15. 15

    如何在字符串中找到第一个元音

  16. 16

    如何在Ruby中找到字符串的第一个非重复字母?

  17. 17

    如何在VBA中找到第一个空单元格?

  18. 18

    如何在对象中找到作为数组的第一个属性?

  19. 19

    如何在排名较高的张量中找到第一个匹配张量的索引

  20. 20

    如何在 Django 模板中找到第一个实例

  21. 21

    如何在列表中找到连续重复数字的第一个索引?

  22. 22

    在R中找到长度为n的第一个序列

  23. 23

    活动开始时获取 TabLayout 第一个选项卡的初始选择事件

  24. 24

    如何在列表python中找到第二个元素和第一个元素的差异

  25. 25

    如何在R中找到子字符串的第一个唯一的相遇

  26. 26

    如何在java中找到一维字符串的第一个字符

  27. 27

    如何在CSS中使用tr类名在tr中找到第一个td?

  28. 28

    如何在与用户给定前缀匹配的字符串向量中找到第一个单词?

  29. 29

    如何在x,y点的2D数组中找到第一个极值?

热门标签

归档