从另一个表更新表,其中列IN多个值

时间:2017-12-02 04:20:58

标签: mysql wordpress

我对此的第一次尝试失败了,我不得不在一张非常大的桌子上进行令人讨厌的恢复。

我已经尝试了多个查询,我认为我越来越接近了,但我找到的所有内容都提供了语法错误(我假设因为IN子句)

表格相同,但wp_postmeta_price仅包含我要恢复的值_regular_price

这是wp_postmeta表格的样子

enter image description here

这里有很多不同的专栏。

此表中的值我正在尝试还原我创建了另一个表wp_postmeta_prices,只有meta_value _regular_price我想要根据meta_key恢复meta_idpost_id

这就是看起来像

enter image description here

这可能不是最简单的方法,但我所做的是将此表导出到Excel电子表格并使用工具将IN列创建为csv格式,以便我可以使用{{1}多个唯一实例的子句

这可能是我最接近的

UPDATE wp_postmeta
INNER JOIN wp_postmeta_price ON wp_postmeta.post_id = wp_postmeta_price.post_id
AND wp_postmeta.meta_id = wp_postmeta_price.meta_id
SET wp_postmeta.meta_value = wp_postmeta_price.meta_value WHERE '_regular_price' IN (2498,2443,2424,2518)

但这不正确。

任何人都可以帮助我使用正确的语法,或者为我提供更好的解决方案吗?

0 个答案:

没有答案