根据匹配字段中另一个表的参数更新整个表

时间:2014-01-24 15:45:35

标签: mysql sql

我的桌子user_data有超过8k的记录。然后我有我的桌子Geo_location。两个表都加入member_num

Geo_location有一个名为public的列,应与表user_dataacceptinClients匹配。它是INT 0或1

我遇到了一些数据一致性问题而且并非所有记录都匹配。我知道如何进行冗长的获取并在PHP中逐个更新,如果它们不匹配的话。

但我想知道是否有办法创建一个SQL查询,它将遍历Geo_location - public中的所有记录,并使用user_data - acceptinClients中的任何值更新它们

有没有办法做到这一点,还是我要求太多?如果是这样,怎么样? 我一直在阅读,但无法找到解决我的问题的简单方法或不理解它们

1 个答案:

答案 0 :(得分:1)

我不知道我是否理解这个问题,但不是

UPDATE Geo_location AS g 
JOIN users_data AS u ON u.member_num = g.member_num 
SET g.public = ud.acceptinClients

正确?