【问题标题】:Generate series from postgres to mysql [duplicate]从postgres生成系列到mysql [重复]
【发布时间】:2017-08-08 21:25:02
【问题描述】:

任何精通 MySQL 和 PostgreSQL 的人都可以将其翻译成 MySQL 吗?

SELECT *
FROM  generate_series(DATE_TRUNC('day', NOW() - interval '30 day'),
                            DATE_TRUNC('day', NOW()),
                            interval '1 day'
                           )

我知道 MySQL 中不存在 generate_series()。有没有类似的功能?

【问题讨论】:

    标签: mysql sql postgresql


    【解决方案1】:

    没有等价物。 MySQL 没有 CTE、generate_series(),甚至没有窗口函数。

    如果你有一个足够大的表(在本例中是 31 行),你可以这样做:

    select (curdate() - interval (@rn := @rn + 1) day) as dte
    from t cross join
         (select @rn := -1)
    limit 31;
    

    【讨论】:

      猜你喜欢
      • 2011-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-15
      • 1970-01-01
      • 2016-04-02
      • 2013-12-05
      • 2016-07-09
      相关资源
      最近更新 更多