【问题标题】:What is this date format called?这种日期格式叫什么?
【发布时间】:2019-11-19 05:41:29
【问题描述】:

这种日期格式叫什么:1YYMMDD

示例:06/28/1959 输出为 1590628 示例:06/28/2019 输出为 1190628

不管怎样,前面总有一个臭1。

【问题讨论】:

  • 这被称为我最糟糕的噩梦。
  • 它被称为Century Marker0 用于 1900 年代,1 用于 2000 年代
  • 我也是雅各布,但汤姆给了我它的名字,它即将不再是:)
  • 这是您的日期,格式为 YYYYMMDD(作为数字)- 19000000。这太糟糕了,但您就可以了。 20190628 - 19000000 = 1190628。
  • 我现在很好,“世纪标记”让我找到了我需要去的地方,以解决我的日期格式问题。几年前我应该花 30 分钟来做这件事。

标签: sql oracle date


【解决方案1】:

正如@TomNash 在他的评论中已经提到的,1 似乎是century marker

所以你的日期格式是 CYYMMDD 其中 C 可能是

  • 0:19xx
  • 1:20xx

这种格式不是ISO 8601的一部分!

它看起来有点像 IBM 的特殊解决方案,也可能是针对 year-2000-problem 的 AS/400 特定解决方案。

我个人的建议是在处理此类日期格式之前,始终通过中间层将其转换为 ISO 8601。

最后但同样重要的是,请记住将使用此类过时格式的软件设置到列表中,因为像世纪标记这样的解决方案只会将 2000 年的问题移到未来 100 年 - 所以我们的孙子孙女会再次遇到同样的问题...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-06
    • 1970-01-01
    • 2016-09-13
    相关资源
    最近更新 更多