YYYYmmddHHMMSS 格式的 Oracle 时间戳
Oracle time stamp in YYYYmmddHHMMSS format
我在 oracle 数据库中有以下格式的时间戳 (6/23/2017 12:00:00.000000 AM)。
我需要将其转换成YYYYmmddHHMMSS
格式。
我尝试使用
进行转换
`to_char(time,"YYYYmmddHHMMSS")`
但它的付出就像 20170623120600
。而不是几分钟,而是几个月。
求推荐。
你应该给 MI
分钟。所以你的转换会像这样
to_char(time,'YYYYmmddHHMISS')`
你必须使用MI
而不是mm
来提分钟,oracle doc是你的朋友
您需要先将字符串转换为时间戳,然后再将其转换为您各自的格式。
您可以尝试如下:
Select
To_Char(
To_TimeStamp('6/23/2017 12:00:00.000000 AM', 'MM/DD/YYYY HH:MI:SS.FF AM'),
'YYYYmmddHHMISS')
from dual;
I have time stamp in oracle db in following format
没有,日期时间在数据库中存储时没有格式。您看到的格式仅供展示。
Instead of minutes it is giving months.
很明显,因为您使用了 MM
而不是 MI
。
- MM 给你月数
- MI 给你分钟的时间比例
所以,使用:
to_char(time,YYYYMMDDHHMISS)
例如,
SQL> SELECT to_char(SYSDATE,'YYYYMMDDHHMISS') FROM dual;
TO_CHAR(SYSDAT
--------------
20150415050759
SQL>
我在 oracle 数据库中有以下格式的时间戳 (6/23/2017 12:00:00.000000 AM)。
我需要将其转换成YYYYmmddHHMMSS
格式。
我尝试使用
`to_char(time,"YYYYmmddHHMMSS")`
但它的付出就像 20170623120600
。而不是几分钟,而是几个月。
求推荐。
你应该给 MI
分钟。所以你的转换会像这样
to_char(time,'YYYYmmddHHMISS')`
你必须使用MI
而不是mm
来提分钟,oracle doc是你的朋友
您需要先将字符串转换为时间戳,然后再将其转换为您各自的格式。
您可以尝试如下:
Select
To_Char(
To_TimeStamp('6/23/2017 12:00:00.000000 AM', 'MM/DD/YYYY HH:MI:SS.FF AM'),
'YYYYmmddHHMISS')
from dual;
I have time stamp in oracle db in following format
没有,日期时间在数据库中存储时没有格式。您看到的格式仅供展示。
Instead of minutes it is giving months.
很明显,因为您使用了 MM
而不是 MI
。
- MM 给你月数
- MI 给你分钟的时间比例
所以,使用:
to_char(time,YYYYMMDDHHMISS)
例如,
SQL> SELECT to_char(SYSDATE,'YYYYMMDDHHMISS') FROM dual;
TO_CHAR(SYSDAT
--------------
20150415050759
SQL>