我想在mysql中使用单个语句为我的word-press博客编写迁移脚本
这是我想要做的sudo代码。
SELECT post_id, meta_value FROM wp_postmeta WHERE meta_key = 'product' as olddata;
foreach {
UPDATE wp_postmeta SET meta_value=olddata.post_id WHERE meta_key = 'myslug_product' AND meta_value = olddata.meta_value
}
我知道可以用任何编程语言完成。但我想要sql解决方案。
答案 0 :(得分:1)
为什么在可以进行更新加入时使用“for each”。在我看来,它更清洁。
UPDATE wp_postmeta
INNER JOIN wp_postmeta olddata
ON meta_value = olddata.meta_value and
olddata.meta_key = 'product'
SET meta_value=olddata.post_id
WHERE meta_key = 'myslug_product'