【问题标题】:How to add a day in Vertica如何在 Vertica 中添加一天
【发布时间】:2016-04-21 16:37:24
【问题描述】:

在 sql 世界中,我们有“adddate()”函数来在给定的日期添加某个值。比如我可以说

select adddate('2016-2-28',2) as my_day;

输出将是“2016-03-01”

在 Vertica 世界中,我们没有 adddate() 函数。我们实际上有 ADD_MONTHS 但没有 ADD_DAYS。

所以我的问题是我们如何在 Vertica 中增加一天

【问题讨论】:

    标签: java vertica


    【解决方案1】:

    Vertica 足够聪明,可以理解以下内容:

    SQL> select '2016-02-28'::date + 2 ;
    

    【讨论】:

      【解决方案2】:

      我想添加几个额外的方法。如果您需要同时支持时间戳和日期,这些都很好。此外,我在其他 DBMS 中看到了对 INTERVAL 的更多支持,因此如果您需要跨 DBMS 支持,您可能需要考虑 INTERVAL。注意:如果您需要将结果转换为日期数据类型,则可能需要转换回日期。

      使用TIMESTAMPADD函数

      SELECT TIMESTAMPADD('day', 1, '2020-02-28');
      

      (如果您需要返回日期)

      SELECT TIMESTAMPADD('day', 1, '2020-02-28')::date;
      

      使用间隔

      SELECT '2016-02-28'::date + INTERVAL '1 day';
      

      (如果您需要返回日期)

      SELECT ('2016-02-28'::date + INTERVAL '1 day')::date;
      

      【讨论】:

        猜你喜欢
        • 2011-09-12
        • 2018-03-31
        • 1970-01-01
        • 1970-01-01
        • 2022-10-06
        • 1970-01-01
        • 1970-01-01
        • 2019-10-30
        • 2020-05-14
        相关资源
        最近更新 更多