【问题标题】:IBM Cloud dashDB TimezoneIBM Cloud dashDB 时区
【发布时间】:2016-07-08 15:24:44
【问题描述】:

IBM Cloud(以前的 Bluemix)dashDB 服务使用 UTC 作为时区。据我所知,您无法更改该设置。我的数据来自不同的时区。

如何为我的数据(表或列)设置时区或构造/格式化我的数据,以便 dashDB 能够正确比较我的值? (例如匹配“今天”)

【问题讨论】:

  • 基本上不支持在数据库架构中包含时区的时间。数据库中的所有时间都是 UTC 时间,任何转换或比较都是 DIY。

标签: ibm-cloud dashdb


【解决方案1】:

答案是“时间数据不支持时区”。而stackoverflow坚持要求答案必须是30个字符或更多是愚蠢的。没有就是没有。

【讨论】:

    【解决方案2】:

    dashDB 具有 TO_UTC_TIMESTAMPFROM_UTC_TIMESTAMP 等功能,可在 UTC 和特定时区之间进行转换。以下查询返回洛杉矶/旧金山的当前时间:

    SELECT from_utc_timestamp (current timestamp, 'America/Los_Angeles')
    from sysibm.sysdummy1
    

    如果您将date 包裹起来,您将获得该特定时区的当前日期(也称为“今天”):

    SELECT date(from_utc_timestamp (current timestamp, 'America/Los_Angeles'))
    from sysibm.sysdummy1
    

    有许多函数可以帮助计算日期/时间,您可以从任何日期/时间值中添加/减去年/月/.../秒。我的建议是存储已转换为 UTC 的时间戳并从那里开始。

    【讨论】:

      【解决方案3】:

      查看 dashDB 知识中心,了解您可以探索 w.r.t 时区的不同选项。

      https://www.ibm.com/support/knowledgecenter/search/timezone?scope=SS6NHC

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-03-09
        • 2017-05-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多