只有当新值不为空时,我才必须合并两个表并更新重复键。 我尝试了下面的代码但没有成功 谁能帮忙? 谢谢!
INSERT
INTO table1
SELECT * FROM temp
ON DUPLICATE KEY UPDATE
table1.tel = coalesce(temp.tel,table1.tel),
table1.fax = coalesce(temp.fax,table1.fax)
最佳答案
我认为您的问题可能是您引用更新子句中的值的方式。以下可能效果更好:
INSERT
INTO table1
SELECT * FROM temp
ON DUPLICATE KEY UPDATE
table1.tel = coalesce(values(tel),tel),
table1.fax = coalesce(values(fax),fax)
关于mysql - 仅当新值不为空时才在 DUPLICATE KEY UPDATE 上合并两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6358939/