【问题标题】:I am trying to write a query but it is not working with lag function我正在尝试编写查询,但它不适用于滞后功能
【发布时间】:2021-01-27 21:31:21
【问题描述】:

我需要按日期对 aa bb cc 列进行分区,并且需要结果,例如连续行中的差异是否超过 60 天。我尝试使用 datediff(date,lag()) 但没有得到预期的结果。

【问题讨论】:

  • 您能显示您尝试过的查询吗?
  • 日期应该是可排序的格式,以便按:yyyy-MM-dd

标签: hive hiveql


【解决方案1】:

假设日期是一个日期时间类型的列,你可以使用下面的代码 -
CASE when datediff(date,lag(Date, 1, 0) over (order by Date) ) >60 then 1 else 0 END diff_gt_60

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-08
    • 2013-02-28
    • 1970-01-01
    • 1970-01-01
    • 2021-09-20
    • 1970-01-01
    • 1970-01-01
    • 2020-10-25
    相关资源
    最近更新 更多