Mysql更新表1与表2的比较

标签 mysql compare

在我的 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/

相关文章:

MySQL:从值列表中选择

python - 哪些词典项目可以放入其他词典中

Javascript (-1 <= 5 <= 1) === 是吗?

c++ - 有 gtest 比较二进制的东西吗?

MYSQL 如何比较字符串

php - 将上传的图像名称存入数据库

php - 从最大的 SQL 和更改 CSS

mysql - 如何设计一个可以引用另一个表或作为自定义条目的表

php - 将列字段中的值与列行中的值进行比较,并打印为选中和未选中的复选框

mysql - Ruby on Rails 不会更改为 mysql