在 Informix DB 中将字符串转换为日期
Posted
技术标签:
【中文标题】在 Informix DB 中将字符串转换为日期【英文标题】:Convert String to Date in Informix DB 【发布时间】:2014-01-14 20:27:19 【问题描述】:我需要在 Informix 数据库中将字符串“12/12/2013 14:30:56.583”转换为日期格式,例如 2013-12-12 14:30:56.583。
我使用了以下功能
to_date('12/12/2013 14:30:56.583',"%d/%m/%Y %H:%M:%S.")
但它不接受 Milliseconds , Milliseconds 对结果值很重要。
【问题讨论】:
【参考方案1】:数据库版本很重要。 %F 的行为最近(11.70.xC8 和 12.10.xC2)发生了变化。在以前的版本中,“。” dot 以及“n”限定符可能必须被省略。 问候
【讨论】:
【参考方案2】:如果您查看手册,您会发现字符串格式中缺少毫秒。
来源: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")
【讨论】:
【参考方案3】:我对 Informix 不太熟悉,但我认为您可以使用标准的 to_date 函数将字符串值转换为日期,然后使用 addMilliseconds 函数添加毫秒。
http://pic.dhe.ibm.com/infocenter/informix/v121/index.jsp?topic=%2Fcom.ibm.netpr.doc%2Fids_net_093.htm
【讨论】:
以上是关于在 Informix DB 中将字符串转换为日期的主要内容,如果未能解决你的问题,请参考以下文章
如何在 DB2 AS/400 中将十进制字段转换为日期字段?