Mysqlテーブルに格納された不完全な日付をどうにかする | でっぷりんのひとりごと

でっぷりんのひとりごと

時々独り言をつぶやくのである・・・・

Mysqlの日付属性の項目には、不完全な(間違った)日付を登録することができる。
というか、されてしまうのである。
そんなレコードを探して誤った日付をNULL値に置き換えてしまえ!

UPDATE hoge_tbl SET hoge_date = NULL WHERE DAYOFYEAR(hoge_date) is null 

DAYOFYEAR()関数は、日付がその年の1月1日から何日目かを調べてくれます。
DAYOFYEAR('2013-01-02')は2を返します。
DAYOFYEAR('2013-01-32')は無効な日付なのでNULLを返します。

 読者登録してね ペタしてね