現在、created というカラムに、datetime 型にて以下のような日時が登録されています。
これの、西暦と月だけを変更したいのですが、どのようなsqlを実行すれば良いでしょうか?
2009-04-03 20:43:31
↓
2010-03-03 20:43:31
update customers set created = '2010-03'
みたいなことをしたいのですが、実行すると 0000-00-00 となってしまいます。
特定の期間ずらしたいなら
UPDATE customers SET created = DATE_ADD(created, INTERVAL 11 MONTH);
もしくは文字列置換で
UPDATE customers SET created = REPLACE(created, '2009-04', '2010-03');
期間でなく変更後の値が固定なら
UPDATE customers SET created = CONCAT('2010-03', SUBSTRING(created, 8,12));
というのはどうでしょう。
特定の期間ずらしたいなら
UPDATE customers SET created = DATE_ADD(created, INTERVAL 11 MONTH);
もしくは文字列置換で
UPDATE customers SET created = REPLACE(created, '2009-04', '2010-03');
期間でなく変更後の値が固定なら
UPDATE customers SET created = CONCAT('2010-03', SUBSTRING(created, 8,12));
というのはどうでしょう。
1番のでOKでした!
ありがとうございます。
1番のでOKでした!
ありがとうございます。