在Oracle SQL中转换日期格式

问题描述

我的日期格式为dd.mm.yyyy,我想将其转换为mm / dd / yyyy。有可能吗?

我在互联网上读到的所有文章都是dd / mm / yyyy到mm / dd / yyyy都是可行的,而且在我尝试时也能奏效。

但是当我放入dd.mm.yyyy时,它不起作用吗?我该如何解决

请帮助我

解决方法

Oracle使用内部格式存储日期。如果您有一个表示日期的 string ,则应该修复数据模型,以便该列具有正确的数据类型。

与此同时,您可以使用以下命令将其转换为1 2 3 4 5 ...

date

您可以将其转换回字符串:

select to_date(col,'dd.mm.yyyy')
,

我的日期格式为dd.mm.yyyy

假设您的意思是DATE数据类型,那么您没有dd.mm.yyyy格式的数据类型。 DATE数据类型值以7字节(代表世纪,百年,月,日,小时,分钟和秒)的二进制值形式存储在数据库中,并且没有格式。>

我想将其转换为mm / dd / yyyy。有可能吗?

否,因为DATE数据类型没有格式。

但是,您可能想问的是:

我要转换显示,因为它是mm / dd / yyyy。有可能吗?

是的,将TO_CHAR与相应的format models一起使用:

SELECT TO_CHAR( date_value,'mm/dd/yyyy' )
FROM   table_name

如果您的意思是您拥有CHARVARCHAR2数据类型,以dd.mm.yyyy格式存储日期值,请使用TO_DATE将其转换为{{1} }数据类型,然后DATE将其显示为所需的格式。

TO_CHAR