软件开发Db2数据库SQL

两个相同的DB2数据库,运行同一条sql结果不同?

DB2数据库都是安装在Linux虚拟机中,版本和环境变量配置基本一致。表结构也都相同。在执行同一条sql时,却出现了不同的结果。在UAT环境正常执行,但是开发环境中却运行失败。具体信息如下:sql:select * from table_name where to_cahr(trans_date,'yyyy-mm') > '2016-01'其中,tra...显示全部

DB2数据库都是安装在Linux虚拟机中,版本和环境变量配置基本一致。表结构也都相同。在执行同一条sql时,却出现了不同的结果。

在UAT环境正常执行,但是开发环境中却运行失败。具体信息如下:

sql:select * from table_name where to_cahr(trans_date,'yyyy-mm') > '2016-01'

其中,trans_date是varchar型,存储的数据格式为“2016-08-01“。

在开发环境中报错信息:

SQL0180N The systax of the string representation of a datetime value is incorrect.

SQLSTATE=22007

感觉是数据库的设置可能有差异,但具体原因不清楚,麻烦大神解惑???

收起
参与5

查看其它 1 个回答Scott_jin的回答

Scott_jinScott_jin数据库管理员环境

数据有问题, 如:2016-02-30  就是非法的。 2月没有30号。这样to_char 就报错。

互联网服务 · 2016-10-17
浏览822

回答者

Scott_jin
数据库管理员环境

Scott_jin 最近回答过的问题

回答状态

  • 发布时间:2016-10-17
  • 关注会员:3 人
  • 回答浏览:822
  • X社区推广