CCYYMMDD日期格式是什么意思?

42
我想找一个有日期参数的肥皂服务,并要求该参数必须采用 CCYYMMDD 格式。
它的定义是什么?
5个回答

49

这只是另一种写法,等价于yyyyMMdd

CC部分表示世纪,而YY表示两位数的年份。


我正在将ISO PAIN 001转换为EDI 820,它使用CCYY格式,但当我进行转换时,它显示20180719,表示今天的日期。为什么它没有转换成2118年?提前致谢。 - Jayveer Parmar
4
使用GJChronology(公历/儒略历)时,CC是“独立的”,但默认情况下是ISOChronology,只有year/100 - 有点奇怪且隐蔽:请参见字段参考 - user85421

25

它表示yyyyMMdd,即年份(4位数字)、月份(2位数字,前导零)和日期(2位数字,前导零)。

因此,ISO 8601日期2014-01-05以CCYYMMDD表示为20140105


12
CC means Century (Century 0 is the 1st Century)
YY means Year
MM means Month
DD means Day

当前日期为:29/10/2015

  • CC:20

  • YY:15

  • MM:10

  • DD:29


5
我们生活在21世纪,对吗?为什么CC:20? - Onkar Musale
4
请记住,世纪编号0代表第1个世纪。 - tread

9
我们处于21世纪,而不是20世纪。但是他们想要用4位数字的格式来表示年份,因此技术上应该是yyyy。所以技术上ccyy是错误的。如果你出生于1990年,并且使用ccyy格式,则得到的结果是2090年,因为1990年属于20世纪。但是,如果你需要写年份,你必须假设他们要求的是yyyy,而不是ccyy。因此,例如,如果你出生于1990年,并且他们要求使用ccyy,不要写2090(尽管从技术上讲是正确的),而是写1990。假设他们希望年份以4位数字格式显示,而不是世纪和2位数字格式年份。

这在技术上是错误的。例如,一天中的第12个小时是从11:00到11:59。同样,当前世纪始终为CC + 1。 - Peter Chaula
世纪数0是第1个世纪。世纪数20是第21个世纪。 - tread

6

CC在CCYYMMDD日期格式中表示特定年份已经结束的世纪数。

例如:

  • 90年没有完成任何世纪,但位于第1个世纪,
  • 1980年有19个世纪已经结束,但位于第20个世纪,
  • 2018年已有20个世纪结束,但位于第21个世纪。

因此CCYY等同于YYYY,只是用另一种方式书写。


2021年(SYSDATE)已经过去了20个世纪,但是当你运行以下查询时,它会告诉你21个世纪已经过去了。 select TO_CHAR(TRUNC(SYSDATE)+55,'CCYY') from dual; - Deep

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接