繁体   English   中英

在Oracle中转换日期格式

[英]Convert date format in Oracle

我在Excel中有一个日期格式2011-01-06T06:30:10Z。我只想将日期部分从excel加载到表格中,如何从中获取日期部分。 即2011-01-06

谢谢

尝试这个:

select cast(TO_TIMESTAMP_TZ(REPLACE('2011-01-06T06:30:10Z', 'T', ''), 'YYYY-MM-DD HH:MI:SS TZH:TZM') as date) from dual

我认为,还需要更多解释。

将数据加载到数据库中是一部分,而在获取后显示数据则是另一部分。

如果已将数据加载到数据库中,则只需使用TRUNC 它将截断time部分,并且仅显示date部分。

DATE总是一起包含日期时间部分。 TIMESTAMPDATE类型的扩展。 而且您看到的日期看起来不是日期在数据库中的存储方式。 格式供我们人类理解。 日期以内部格式以7字节存储。

更多信息基于OP通过评论提出的问题

切勿DATE存储为VARCHAR2数据类型。 日期不是字符串文字。 Oracle提供了许多FORMAT MODELS以所需的方式显示日期时间。 迟早,由于数据转换,您将遇到性能问题。 始终使用显式转换将文字转换为完美的DATE以便将其与其他日期值进行比较。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM