【问题标题】:Julian Day to ISO 8601 string in SQLiteSQLite 中的 Julian Day 到 ISO 8601 字符串
【发布时间】:2011-09-30 14:27:36
【问题描述】:

我有一个表,将日期/时间值存储为 SQLite 中的儒略日(使用 julianday() 函数)。当我阅读它们时,我似乎无法弄清楚如何将它们转换回 ISO 8601 样式字符串 (YYYY-mm-ddThh:m:ss.sss)?

【问题讨论】:

    标签: sqlite iso8601 julian-date


    【解决方案1】:

    只需将儒略日编号输入datetime function

    时间字符串可以是以下任何一种格式:
    [...]
    12. DDDDDDDDDD
    [...]
    格式 12 是以浮点值表示的儒略日数。

    所以datetime(julianday_output)julianday 函数的方向相反:

    sqlite> select datetime(julianday(current_timestamp)) as dt_from_jd, current_timestamp as dt;
    dt_from_jd          | dt
    2011-09-30 14:46:52 | 2011-09-30 14:46:52
    

    【讨论】:

    • 谢谢!不知道我是怎么错过的。
    【解决方案2】:

    【讨论】:

    • 我确实看到了这一点,但我并没有立即明白如何进行相反的转换。我认为 %J 对字符串进行操作并返回一个儒略日数(如 SELECT strftime('%J', 'ISO_8601')
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-17
    • 1970-01-01
    • 1970-01-01
    • 2021-03-17
    • 2012-11-22
    • 2011-12-21
    • 1970-01-01
    相关资源
    最近更新 更多