sql—将时间戳格式转换为字符的问题

rqdpfwrv  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(328)

进行此查询:

CREATE TABLE my_table 
   (    
    "CREATED" TIMESTAMP (6) DEFAULT sysdate NOT NULL ENABLE, 
    "CREATED_BY" VARCHAR2(256 BYTE) NOT NULL ENABLE, 
    "EFFECTIVEDATE" TIMESTAMP (6)
)

如果我对effectivedate列进行一个简单的查询,则如下所示(插入一些内容之后):

select EFFECTIVEDATE
from my_table;


但如果我想格式化时间戳。。。查询:

select to_char(mt.EFFECTIVEDATE, 'YYYY-MM-DD HH:MM:SS') as "EffectiveDate"
from my_table mt


为什么要将这些值添加到hh:mm:ss中?
我该怎么做才能解决这个问题?我需要这些值作为字符串
一定是这样的:

2020-06-26 00:00:00
2020-06-24 00:00:00
2017-01-01 00:00:00
2017-01-01 00:00:00
2017-01-01 00:00:00

我用的是甲骨文19。

js5cn81o

js5cn81o1#

因为你正在使用 MM 而不是 MI . MM -月 MI -分钟
您应该使用:
to_char(mt.EFFECTIVEDATE, 'YYYY-MM-DD HH:MI:SS') HH 表示12小时内 HH24 表示24小时格式

相关问题