在Informix DB中将字符串转换为日期

时间:2014-01-14 20:27:19

标签: sql informix

我需要将一个字符串说'12 / 12/2013 14:30:56.583'转换为Informix数据库中的日期格式,如2013-12-12 14:30:56.583。

我使用了以下功能

to_date('12/12/2013 14:30:56.583',"%d/%m/%Y %H:%M:%S.")    

但它不接受毫秒,毫秒对结果值很重要。

3 个答案:

答案 0 :(得分:5)

数据库版本很重要。最近%F的行为(11.70.xC8和12.10.xC2)发生了变化。在以前的版本中,“。”必须省略dot以及“n”限定符。 问候

答案 1 :(得分:1)

如果查看手册,您会看到字符串格式的毫秒数。

来源:http://www-01.ibm.com/support/knowledgecenter/api/content/SSGU8G_12.1.0/com.ibm.sqls.doc/ids_sqs_1542.htm

  

%S秒为2位整数(00到61)。第二个值可以   高达61(而不是59)允许偶尔的闰秒   并且闰秒。

     

%Fn秒的分数值,精度由。指定   无符号整数n。 n的默认值为2; n的范围是   0≤n≤5。该值将覆盖任何宽度或精度   在%和F字符之间指定。

所以,这可能会奏效:

to_date('12/12/2013 14:30:56.583',"%d/%m/%Y %H:%M:%S.%F3")    

答案 2 :(得分:0)

我对Informix并不熟悉,但我认为您可以使用标准的to_date函数将字符串值转换为日期,然后使用addMilliseconds函数添加毫秒。

http://pic.dhe.ibm.com/infocenter/informix/v121/index.jsp?topic=%2Fcom.ibm.netpr.doc%2Fids_net_093.htm