日期时间常量
日期时间常量是特定格式的字符串常量。
有关字符串常量的更多信息,请参阅常量。
有关有效字符串格式的信息,请参阅日期时间值的字符串表示。
通常,字符串常量用于在赋值和比较中表示常量日期时间值。 然而,ANSI/ISO SQL标准中的日期时间常量形式可以用来特别表示日期时间常量,而不是字符串常量。 ANSI/ISO SQL标准日期时间常量的格式如下:
- 日期字符串常量
- 字符串常量必须包含符合日期字符串表示形式有效格式之一的值,并遵守以下规则:
- 不允许前导空白。
- 日期的月份和日期部分可以省略前导零。 任何被省略的数字均默认为0。
- 日期的年份部分必须包含前导零。
- 可以包括尾随空格。
该值的类型为日期。
- TIME 字符串常量
- 字符串常量必须包含符合时间字符串表示有效格式之一的值,并遵守以下规则:
- 不允许前导空白。
- 时间小时部分可以省略前导零。
- 时间的第二个元素可以省略。
- 可以包括尾随空格。
- 如果未使用美国格式,且分和秒均为零,则小时可以为24。
- 如果格式为美国格式,则适用以下附加规则:
- 时间的分钟部分可以省略。 例如,1 PM 相当于 1:00 PM。
- 字母A、M和P可以小写。
- 在“上午”或“下午”之前必须有一个空格。
- 小时数不能大于12,也不能为0,除非指定时间为00:00 AM。
任何被省略的数字均默认为0。
美国格式和ISO格式(24小时制)之间的对应关系如下:
- 凌晨12:01至凌晨12:59对应 00.01.00 , 00.59.00
- 上午01:00至上午11:59,请发送邮件至 01.00.00 , 11.59.00
- 中午12点至晚上11点59分,请发送邮件至 12.00.00 , 23.59.00
- 凌晨12点(午夜)对应于 24.00.00
- 凌晨0点(午夜)对应于 00.00.00
该值的数据类型为TIME。
- TIMESTAMP 字符串常量
- 字符串常量必须包含符合下表所列格式之一的值,并遵守以下规则:
- 不允许前导空白。
- 可以包括尾随空格。
- 时间戳的月份、日期、小时和时区小时元素可以省略前导零。 任何被省略的数字均默认为0。
- 时间戳的分钟、秒和时区分钟元素必须包含前导零
- 如果分、秒和任何小数秒都为0,那么小时数可以是24。
- 如果秒数不包含小数部分,则可以省略秒数后面的分隔符。
- 小数秒的位数可以在0到12之间变化。 如果省略了小数秒,则默认规格为0。 小数秒的位数决定了时间戳值的精确度。
- 在时间和时区元素之间可以包含一个可选的单空格。
- 可选时区可以包括在以下格式之一中:
- ±th:tm,取值范围为-24:00至+24:00。 -0 :00与+0:00具有相同含义。
- ±th,取值范围为-24至+24(时区分钟元素默认为00)
- 使用大写Z表示UTC
值的类型取决于字符串常量(其中 p 是常量中小数秒的位数)的内容:
表 1. 用于指定不带时区的TIMESTAMP数据类型的值的格式 描述 时间戳(0) 无时区 1、3 时间戳 ( p ) 不含时区 2、3 日期和时间部分之间以及时间部分冒号之间留空。 - yyyy-mm-dd hh:mm:ss
- yyyy-mm-dd hh:mm:ss。
yyyy-mm-dd
hh:mm:ss.nnnnnnnnnnnn日期和时间部分之间以及时间部分中的句号均为空格。 - yyyy-mm-dd hh.mm.ss
- yyyy-mm-dd hh.mm.ss.
yyyy-mm-dd
hh.mm.ss.nnnnnnnnnnnn
日期和时间部分之间为减号,时间部分为冒号。

- yyyy-mm-dd-hh:mm:ss
- yyyy-mm-dd-hh:mm:ss。

yyyy-mm-dd-
hh:mm:ss.nnnnnnnnnnnn
日期和时间部分之间以及时间部分中的句号之间使用减号。 - yyyy-mm-dd-hh.mm.ss
- yyyy-mm-dd-hh.mm.ss.
yyyy-mm-dd-
hh.mm.ss.nnnnnnnnnnnn注:- 无小数秒;显示时可选择是否在秒后添加尾随句点
- p 是小数秒的位数。 nnnnnnnnnnnn 可以是 1 - 12 个 n 的实例
- 作为附加格式,字符T可以作为值中日期和时间部分的分隔符。
表 2. 用于指定带有时区信息的TIMESTAMP数据类型的值的格式 描述 时间戳(0) 带时区 1、3 带有时区 2、3 的时间戳 ( p ) 日期和时间部分之间以及时间部分中的冒号之间留空,时间与时区之间不留空格。 - 年-月-日 时:分:秒±时:分:秒
- 年-月-日 时:分:秒±时区
- 年-月-日 时:分:秒.±时:分:秒
- 年-月-日 时:分:秒 ±秒
- yyyy-mm-dd
hh:mm:ss.nnnnnnnnnnnn
±th:tm - yyyy-mm-dd
hh:mm:ss.nnnnnnnnnnnn
±th
日期和时间部分之间为减号,时间部分为冒号。

- yyyy-mm-dd-hh:mm:ss±th:tm
- yyyy-mm-dd-hh:mm:ss±th
- yyyy-mm-dd-hh:mm:ss.±th:tm
- yyyy-mm-dd-hh:mm:ss.±th


- yyyy-mm-dd-
hh:mm:ss.nnnnnnnnnnnn
±th:tm - yyyy-mm-dd-
hh:mm:ss.nnnnnnnnnnnn
±th

日期和时间部分之间以及时间部分中的句号之间使用减号。 - yyyy-mm-dd-hh.mm.ss ±th:tm
- yyyy-mm-dd-hh.mm.ss ±th
- yyyy-mm-dd-hh.mm.ss.±th:tm
- yyyy-mm-dd-hh.mm.ss.±th
- yyyy-mm-dd-
hh.mm.ss.nnnnnnnnnnnn
±th:tm - yyyy-mm-dd-
hh.mm.ss.nnnnnnnnnnnn
±th
日期和时间部分之间留空,时间部分使用冒号,小数秒和时区符号之间留空。 - 年-月-日 时:分:秒 ±时:分:秒
- 年-月-日 时:分:秒 ±小时
- 年-月-日 时:分:秒 ±时:分
- 年-月-日 时:分:秒。第±个
- yyyy-mm-dd
hh:mm:ss.nnnnnnnnnnnn
±th:tm - yyyy-mm-dd
hh:mm:ss.nnnnnnnnnnnn
±th
日期和时间部分之间以及时间部分中的句号均为空格。 - yyyy-mm-dd hh.mm.ss ±th:tm
- 年-月-日 hh.mm.ss ±th
- yyyy-mm-dd hh.mm.ss.±th:tm
- yyyy-mm-dd hh.mm.ss.±th
- yyyy-mm-dd
hh.mm.ss.nnnnnnnnnnnn
±th:tm - yyyy-mm-dd
hh.mm.ss.nnnnnnnnnnnn
±th
注:- 无小数秒;显示时可选择是否在秒后添加尾随句点
- p 是小数秒的位数。 nnnnnnnnnnnn 可以是 1 - 12 个 n 的实例
- 作为附加格式,字符T可以作为值中日期和时间部分的分隔符。