2011-01-04 3 views
0

私は間違った年の日付を示すいくつかの行のテーブルを持っています。日付の形式はMM/DD/YYYYですが、2011の代わりに1933と表示されています。Interbaseの年フィールドが変更されました

InterbaseでSQLを使用して年を変更するにはどうすればよいですか?私は他のデータベースとCDATEを行うことができますが、Interbaseで同等のものを見つけることができませんでした。

答えて

0

これらの行に沿って何かが働く可能性があります。 1933年のすべての日付を更新する必要があると仮定します。 CAST()、EXTRACT()、および連結演算子( '||')は標準SQLです。

 
UPDATE yourtablename 
SET date_column = 
    CAST('2011-' || 
     EXTRACT(month from date_column) || '-' || 
     EXTRACT(day from date_column) as DATE) 
WHERE date_column BETWEEN '1933-01-01' and '1933-12-31' 

この列にCHECK制約がないと、1933以上の日付が表示されることがあります。

関連する問題