2016-07-05 67 views
0

我努力尝试会列出所有未在上个月更改项目,但是当我运行此查询子句:WHERE 6个月的条件

select * from AGLT.LTB0040 WHERE wdate> current_date - 6 MONTHS 

我得到一个错误消息说,值无效。我查看了该领域中列出的日期,并且他们是20160101.关于我出错的地方有什么想法?

+1

你能试着'当前date',而不是'current_date' – Arulkumar

+0

在标准SQL的间隔需要像这样指定:'interval'6'month'不确定DB2是否支持这种操作 –

+0

“WDATE”的数据类型是什么? – mustaccio

回答

0

如果日期列是表示日期的字符串或数字比较。

如果日期是8字符字段

WHERE wdate >= varchar_format(current 
timestamp- 6 months,'YYYYMMDD')   

如果日期是8,0场

WHERE wdate >= cast(varchar_format(current 
timestamp- 6 months,'YYYYMMDD') as decimal(8,0)) 
+0

谢谢你解决了这个问题。 – Demilich1988