我希望我的存储过程知道如何转换格式为
的字符串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非常新,所以非常感谢任何指导/提示
谢谢!
答案 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
我希望这会有所帮助。