暂无图片
暂无图片
2
暂无图片
暂无图片
暂无图片

OceanBase SQL语句DATE、DATETIME 和 TIMESTAMP 类型

2024-04-05
2416

DATEDATETIME 和 TIMESTAMP 类型是相关的。本节主要介绍它们的特征、相似之处以及不同之处。

DATE

DATE 类型用于表示具有日期部分但没有时间部分的值。

DATE 值的检索和显示格式为 'YYYY-MM-DD',范围是 '0000-00-00' 到 '9999-12-31'。

OceanBase 数据库允许使用字符串或数字将值分配给 DATE 列。

语法如下:

DATE

DATETIME

DATETIME 类型用于表示同时包含日期和时间部分的值。

DATETIME 值的检索和显示格式为 'YYYY-MM-DD hh:mm:ss',范围是 '0000-00-00 00:00:00' 到 '9999-12-31 23:59:59'。

语法如下:

DATETIME[(fsp)]

可选 fsp 值用来指定小数位秒的精度,范围为 [0,6]。0 值表示没有小数部分。如果省略,则默认精度为 0。

DATETIME 列通过使用 DEFAULT 和 ON UPDATE 子句指定当前日期和时间的自动初始化和更新。

DATETIME 值可以包含秒的小数位部分,精度最高可达微秒(6 位),格式为 'YYYY-MM-DD hh:mm:ss[.fraction]',范围为 '0000-00-00 00:00:00.000000' 到 '9999-12-31 23:59:59.999999'。小数部分应始终与其他时间位用小数点分隔,不识别其他分隔符。

TIMESTAMP

TIMESTAMP 数据类型用于表示同时包含日期和时间部分的值。

语法如下:

TIMESTAMP[(fsp)]

可选 fsp 值来指定小数位秒的精度,范围为 [0,6]。0 值表示没有小数部分。如果省略,则默认精度为 0。

示例如下:

CREATE TABLE t(C1 TIMESTAMP(6));

TIMESTAMP 列可以使用 DEFAULT CURRENT_TIMESTAMP 和 ON UPDATE CURRENT_TIMESTAMP 子句指定当前日期和时间的自动初始化和更新。默认情况下,第一个 TIMESTAMP 列具有这些属性,也可以定义表中的其他 TIMESTAMP 列具有这些属性。

TIMESTAMP 值可以包括秒的小数位部分,精度最高可达微秒(6 位),格式为 'YYYY-MM-DD hh:mm:ss[.fraction]',范围是 '0000-00-00 00:00:00.000000' 到 '9999-12-31 23:59:59.999999'。小数部分应始终与其他时间位用小数点分隔,不识别其他分隔符。

OceanBase 数据库将 TIMESTAMP 值从当前时区转换为 UTC 进行存储,然后从 UTC 转换回当前时区以进行检索。默认情况下,每个连接的当前时区遵从服务器的时间,但也可以更改每个连接的时区。如果没有使用相同的时区进行双向转换,则更改时区后检索到的值可能与存储值不同。只要时区设置保持不变,就可以检索到存储的值。当前时区可用作 time_zone 系统变量的值。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论