【问题标题】:postgresql generating a list of dates between two dates fieldspostgresql 生成两个日期字段之间的日期列表
【发布时间】:2021-01-14 18:47:44
【问题描述】:

我想从两个字段中获取日期列表:开始和结束。 我在这里找到了一个案例:Show a list of dates between two dates?

但我希望有一个更好的解决方案,而不需要通过中间表。

这是初始表:

这是我想要的结果:

谢谢

【问题讨论】:

    标签: postgresql date date-range dateinterval


    【解决方案1】:

    使用generate_series()

    select t.id, t.name, t.g.dt::date as start_end
    from the_table t
      cross join generate_series(t.date_start, t.date_end, interval '1 day') as g(dt)
    order by t.id, g.dt;
    

    【讨论】:

    • 非常感谢您的帮助。它运作良好。这正是我想要的。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2021-12-08
    • 2012-12-16
    • 2017-01-29
    • 2018-04-30
    • 1970-01-01
    • 2012-07-09
    • 1970-01-01
    • 2010-10-05
    相关资源
    最近更新 更多