Movable Type でカスタムフィールド foo の値が bar なブログ記事のカテゴリを hoge に一括で変更したい

なんかクイズのようなタイトルですね…

例えば、basename が「birthday_year」(誕生日の年)のカスタムフィールドの値が、1810年代に該当するブログ記事が属するカテゴリのうち、カテゴリIDが120のカテゴリを、一括でカテゴリIDが121のカテゴリに変更したいとき、以下の SQL を実行すれば OK です(妙に具体的w)。

UPDATE `mt_placement`
INNER JOIN `mt_entry_meta`
ON `mt_placement`.`placement_entry_id` = `mt_entry_meta`.`entry_meta_entry_id`
SET `mt_placement`.`placement_category_id` = 121
WHERE `mt_placement`.`placement_category_id` = 120
AND `mt_entry_meta`.`entry_meta_type` LIKE 'field.birthday_year'
AND `mt_entry_meta`.`entry_meta_vchar_idx` REGEXP '^181.*';

直接データベースをいじるので、バックアップは忘れずに!ご利用は自己責任で。

  • このエントリーをはてなブックマークに追加
Just a second...