mariadb 如何更新两个表中的值,其中一个表为usermeta MySQL

jq6vz3qz  于 2022-11-08  发布在  Mysql
关注(0)|答案(1)|浏览(162)

我有两个表,我需要发出一个SQL请求,该请求将更新两个表中的值。
它们的关系基于ID(1个表= evdb_users.ID / 2个表= evdb_usermeta.user_id)
现在,我执行了如下SQL查询:

"UPDATE evdb_users
       INNER JOIN evdb_usermeta ON evdb_users.ID = evdb_usermeta.user_id AND evdb_usermeta.meta_key='phone_number'
       SET evdb_users.user_login='%s', evdb_users.user_email='%s', evdb_users.display_name='%s', evdb_usermeta.meta_value='%s'
       WHERE evdb_users.ID=%d"

evdb_users(登录名/电子邮件/显示名称)中的数据-正在更新,但usermeta(phone_number)中没有任何更改
请帮助我弄清楚它应该如何以及它必须如何工作。

2mbi3lxu

2mbi3lxu1#

请尝试以下操作:

UPDATE evdb_users
       INNER JOIN evdb_usermeta
         ON  evdb_users.ID = evdb_usermeta.user_id 
         AND evdb_usermeta.meta_key='phone_number'
       SET evdb_users.user_login='%s'
         , evdb_users.user_email='%s' 
         , evdb_users.display_name='%s' 
         , evdb_usermeta.meta_value='%s'
       WHERE evdb_users.ID=%d;

相关问题