我已经通读了类似问题的其他答案,但不知道如何解决我的问题。
我正在处理的表包含"jobs"
的元密钥,元密钥和id of the "job"
重复多次。
表格结构:
id | job_id | meta_name | meta_content
id
是唯一的,job_id
将使用不同的meta_name
和meta_content
值重复3-10次,meta_name
每个job_id
只能存在一次,不应依赖meta_content
,因为它将存储从文本到电子邮件到电话号码的任何内容。
我所有使用ON DUPLICATE KEY UPDATE
的尝试都失败了,只创建了新行,导致了多个job_id+meta_name
组合。
有人能帮助构建查询吗?
meta_name每个job_id 只能存在一次
然后,您应该在这两列上创建一个组合的UNIQUE索引。
有了这一点,INSERT … ON DUPLICATE KEY UPDATE
将按预期用于此类数据组合。
您必须将两个唯一的键列与结合起来
UNIQUE KEY keyname (job_id,meta_name)