本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
用于创建特定输出时间戳的模板字符串
| 模板 | 输入字符串 | 输出TIMESTA | 注意 |
|---|---|---|---|
'yyyy-MM-dd hh:mm:ss'
|
'2009-09-16 03:15:24'
|
'2009-09-16 03:15:24'
|
|
'yyyy-mm'
|
'2011-02-08 07:23:19'
|
'2011-01-01 00:02:00'
|
上面的模板仅指定了第一年和第二分钟,因此输入字符串 (“02”) 中的第二个元素用作分钟。默认值用于月和日 (“01”) 以及小时和秒 (“00”)。 |
'MMM dd, yyyy'
|
'March 7, 2010'
|
'2010-03-07 00:00:00'
|
嗯,上面模板中的 “March” 匹配;模板的 “逗号空格” 与输入字符串匹配。 如果模板缺少逗号,则输入字符串也必须缺少逗号,否则没有输出; 如果输入字符串缺少逗号,则模板也必须缺少逗号。 |
'MMM dd,'
|
'March 7, 2010'
|
'1970-03-07 00:00:00'
|
请注意,上面的模板不使用年份说明符,导致输出 TIMESTAMP 使用该纪元中最早的年份,即 1970 年。 |
'MMM dd,y'
|
'March 7, 2010'
|
'2010-03-07 00:00:00'
|
使用上面的模板,如果输入字符串是 “3月7日10日”,则输出时间戳将为 “0010-03-07 00:00:00”。 |
'M-d'
|
'2-8'
|
'1970-02-08 00:00:00'
|
如上所述,模板中缺少 yyyy 说明符,则使用这个时代(1970 年)的最早年份。 输入字符串 '2—8−2011' 会得到相同的结果;使用 '2011—2−8' 不会给出任何结果,因为 2011 年不是有效的月份。 |
'MM-dd-yyyy'
|
'06-23-2011 10:11:12'
|
'2011-06-23 00:00:00'
|
如果模板和输入在相同位置使用破折号作为分隔符(如上所述)就可以了。由于模板省略了小时、分钟和秒,因此在输出 TIMESTAMP 中使用零。 |
|
|
|
|
您可以按任意顺序使用说明符,只要该顺序与您提供的输入字符串的含义相匹配。以下下一个示例的模板和输入字符串与本示例具有相同的含义(以及相同的输出 TIMESTAMP),但它们指定了几天前的几个月和小时前的秒数。 |
|
|
|
|
在上面使用的模板中,月份和日说明符的顺序与上面的示例相反,秒的说明符在小时之前而不是分钟之后;但是由于输入字符串还将月份放在天前,秒放在小时之前,因此(和输出时间戳)是与上面的示例相同。 |
|
|
|
|
上面使用的模板反向使用年份和月份说明符(与上面的示例相比),而输入字符串保持不变。在这种情况下,输出 TIMESTAMP 使用输入字符串的第一个元素作为年份,第二个元素作为日期,第三个元素作为月份。 |
|
|
|
|
如上所述,在模板中省略秒数的情况下,输出 TIMESTAMP 使用 00 秒。任意数量的 y 说明符都会产生相同的结果;但是如果输入字符串无意中使用了 1 而不是 11 作为年份,如 '23-06-1 10:11:12 ',则输出时间戳变为 '0001-06-23 10:11:00'。 |
|
|
|
|
如果模板和输入在相同位置使用斜杠作为分隔符就可以了,如上所述。使用说明符 hh,12:11:10 和 00:11:10 的输入时间与早晨时间的含义相同。 |
|
|
|
|
输入字符串值 但是,更改模板会提供有用的输出:
已选择 1 行
请注意,对于中午 12 点之后的时间(即下午和晚上的时间),小时说明符必须是 HH 而不是 hh,并且输入字符串必须以 24 小时制时间指定下午或晚上的时间,小时从 00 到 23 不等。 使用说明符 HH,12:11:10 和 00:11:10 的输入时间具有不同的含义,第一个是下午的时间,第二个是早上的时间。 使用说明符 hh,从 12:00 到 11:59:59 的时间是早晨:
|