【问题标题】:Make DATEDIFF of Redshift behave as TIMESTAMPDIFF of MySQL使 Redshift 的 DATEDIFF 表现为 MySQL 的 TIMESTAMPDIFF
【发布时间】:2016-03-02 03:25:57
【问题描述】:

MYSQL 中,TIMESTAMPDIFF(MONTH, '2016-01-31', '2016-02-01') 返回0

Redshift 中,DATEDIFF(MONTH, '2016-01-31', '2016-02-01') 返回1

如何使Redshift 中的DATEDIFF(MONTH, '2016-01-31', '2016-02-01') 返回0

目前我正在使用DATEDIFF(DAY, '2016-01-31', '2016-02-01')/30。但这还不够好,因为有些月份有 28-31 天。

【问题讨论】:

    标签: mysql database amazon-redshift


    【解决方案1】:

    MONTHS_BETWEEN 是解决这个问题的好方法。

    例子:

    select months_between('1969-03-18', '1969-01-18') as months; 
    

    您可以在红移documentation 中阅读更多相关信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-26
      • 2019-02-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多