我在数据库中有两个表,如下所示:

桌子

id | name
------------
1  | Cars


元数据表

id | post_id | key  | value
---------------------------
1  | 1       | Audi | 42


并想要精确匹配(值)并替换两个表(id / post_id)的值并进行如下转换:

新文章表

id | name
------------
42 | Cars


新的元数据表

id | post_id | key  | value
---------------------------
1  | 42      | Audi | 42


这可能吗?
谢谢!

最佳答案

这假定articlemeta之间的关系是article.id ==> meta.post_id

article中,id被相关的meta.value代替:

UPDATE article
INNER JOIN meta ON article.id = meta.post_id
SET id = meta.value


对于new_meta,看起来您只需要使post_idvalue相同。由于测试数据,这可能会造成误解。如果需要连接,请遵循上面查询的示例。

UPDATE meta
SET post_id = value;

关于mysql - 匹配并替换mysql查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17216828/

10-13 02:01