字符串转换为时间

时间:2015-06-10 19:08:36

标签: sql oracle-sqldeveloper

我希望我的存储过程知道如何转换格式为

的字符串
MM-DD-YYYY (06-23-2008) to the TIMESTAMP(6) format 

TIMESTAMP(6)格式如下:

03-MAY-15 09.02.44.000000000 PM

因为表中的数据存储为timestamp(6),我想使用字符串来选择或修改适当的数据。

所以基本上上面的日期会变成

23-JUNE-08 00.00.00.000000000 PM 

然后我可以循环播放到当天结束,以找到合适的日期

我对SQL非常新,所以非常感谢任何指导/提示

谢谢!

1 个答案:

答案 0 :(得分:1)

TIMESTAMP(6)本身没有字符串格式。它只是一种时态数据类型,没有任何格式信息,只有日期+时间信息。

要从格式化字符串中获取TIMESTAMP(6)值,您可以使用TO_TIMESTAMP函数,它看起来像这样:

select to_timestamp('06-23-2008', 'MM-DD-YYYY') from dual

获得TIMESTAMP(6)值后,您可以选择将其转换为字符串,并使用TO_CHAR函数以您选择的任何方式对其进行格式化。

例如:

select to_char(to_timestamp('06-23-2008', 'MM-DD-YYYY'), 'YYYY-MM-DD HH24:MI:SS') from dual

...将返回:

2008-06-23 00:00:00

我希望这会有所帮助。