Oli*_*m67 2 sql db2 db2-400 to-date ibm-midrange
我写信给你是因为我不能to_date
在AS400数据库上使用运算符.
使用Oracle数据库,我使用:
datefield >= to_date('01/01/2014','DD/MM/YYYY')
Run Code Online (Sandbox Code Playgroud)
但是使用AS400,我收到一个错误:
不兼容的运营商
我可以使用另一种功能来替换to_date
吗?
假设datefield是实际日期数据类型
然后,您需要做的就是使用ISO格式的日期字符串
datefield >= '2014-01-01'
Run Code Online (Sandbox Code Playgroud)
DB2 for IBM i将始终将'2014-01-01'视为日期.
但如果你真的想自己明确地转换它,那么有两个功能
DATE('2014-01-01')
CAST('2014-01-01' as DATE)
Run Code Online (Sandbox Code Playgroud)
CAST是便携性的首选.
我建议坚持使用ISO格式,但系统会识别美国'mm/dd/yyyy'和''dd.mm.yyyy'.
参考这里:
http://www-01.ibm.com/support/knowledgecenter/ssw_ibm_i_71/db2/rbafzdtstrng.htm