2016-08-30 11 views
0

これは技術的にはTeradataの場合ですが、SQLと似ています。この同じエラーがSQLクエリで発生しない可能性があります。もしそうなら、おそらくTeradataの経験を持つ人がこれに答えることができます。私はで終わるクエリがある:存在しない前日を検索するSQLクエリ

WHERE DB.LOG_DATE > DATE - INTERVAL '6' MONTH; 

それは今日までうまく働いた、と私は2月30日のことではないので、それは今日働いていない推測しています。簡単な解決策があるかどうかは確かではありませんが、おそらく何かのようなものでしょうか。

WHERE DB.LOG_DATE > ROUND(DATE - INTERVAL '6' MONTH); 

答えて

2

これは、Teradataのロジックではない、それは実際にあなたが両方YEAR間隔-構文を使用することはできません愚かな標準SQL(ですおよびMONTH)。

WHERE DB.LOG_DATE > ADD_MONTHS(DATE,-6); 
:-) ADD_MONTHSがあります理由です
0

TD Forumポストからの解決策を得ました。将来的には、この時につまずく人のために...

ADD_MONTHS(DATE、-6)

関連する問題