微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Mysql在具有一对多关系的表中插入唯一记录

如何解决Mysql在具有一对多关系的表中插入唯一记录

enter image description here

我有两个表twpcu_posts和twpcu_postMeta具有一对多关系。表twpcu_postMeta具有列post_id,Meta_key,Meta_value。 post_id是twpcu_postMeta中的外键。

twpcu_posts twpcu_postMeta id名称id post_id Meta_key Meta_value 1 hhh 1 1 ky_hello你好 2 1 ky_morning hello1 3--- 现在我想针对post_id 1添加_wpbdp [fields] [55]作为Meta_key和EMAIL作为Meta_value。我在twpcu_posts中大约有1000条记录与twpcu_postMeta有一对多的关系,并希望为twpcu_posts表的每个ID添加相同的Meta_key和值。

我尝试了以下查询,但它将ID为1的所有记录都更新为Meta_key'_wpbdp [fields] [55]和Meta_value EMAIL。

UPDATE `twpcu_postMeta` pm inner join twpcu_posts ps ON pm.post_id= ps.id 
SET pm.Meta_key = '_wpbdp[fields][55]',pm.Meta_value = 'EMAIL' 
WHERE ps.post_status = 'publish' AND ps.post_type = 'wpbdp_listing'  

谢谢, 在图像中,您可以看到在运行查询后,它根据ID 49397更新了所有记录,而不是插入单行

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。