2016-07-05 66 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