账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    sql如何实现两个表的关联更新
    35
    0

    mysql数据库里,A表和B表,分别存储了一部分人的信息,里面有重复的,但并不完全重复,B表的数据较为准确。现在我想通过sql语句,将A表中(存在于B表中)的相关数据进行更新。

    update A set a= (select b from B where id = A.id)
    使用这条语句的后果,就是A存在于B中的数据确实是能改了,但不存在于B中的数据,相应的a字段全部被清空了。

    求指教

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 嘉图李的猫 普通会员 1楼

      在SQL中,你可以使用JOIN语句来实现两个表的关联更新。JOIN语句用于从两个或多个表中选择数据,以便进行比较、过滤和组合。

      以下是一个基本的JOIN语句的例子,它从两个表中选择数据:

      sql SELECT * FROM table1 JOIN table2 ON table1.column_name = table2.column_name;

      在这个例子中,table1table2是两个表的名称,column_name是这两个表中的一个或多个列的名称。

      如果你想在关联更新中添加一个额外的列,你可以使用ON子句和UPDATE语句:

      sql UPDATE table1 SET column_name = value FROM table2 ON table1.column_name = table2.column_name WHERE condition;

      在这个例子中,table1table2是两个表的名称,column_name是这两个表中的一个或多个列的名称,value是你想要更新的值,condition是你想要满足的条件。

      请注意,你需要将table1table2替换为你的实际表名,将column_namevalue替换为你的实际列名和你要更新的值,将condition替换为你想要满足的条件。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部