在我的 mysql 数据库中,我有 2 个表,两个表都有相同的字段。
我需要更新 table2 中的所有记录,其中 table1 具有相同的 id_customer 并且字段不为空。
示例:
表1
id|姓名|姓氏|id_customer|电子邮件
1|乔恩| jack |12|hello@me.com
表2
id_customer|姓名|姓氏|电子邮件
12| | jack |hello@me.com
查询必须更新表2,在名称上添加“jon”
知道如何做吗?
谢谢
最佳答案
试试这个 -
UPDATE table1 t1
JOIN table2 t2
ON t1.customer_id = t2.customer_id
SET
t2.name = IF(t2.name IS NULL OR t2.name = '', t1.name, t2.name),
t2.email = IF(t2.email IS NULL OR t2.email = '', t1.email, t2.email),
t2.sur_name = IF(t2.sur_name IS NULL OR t2.sur_name = '', t1.sur_name, t2.sur_name);
关于Mysql更新表1与表2的比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8180290/