2010-11-09 85 views
0

我有2个表,一个用于user_data,一个用于user_stats。我试图根据user_stats表的最后一个登录字段,将所有用户的user_data字段更新为单个值(“active”)。基于第二个表字段值的MySQL质量表更新

我试图避免一个循环,因为所有相应的字段将被更新为“活动”。

继承人基本上就是我试着做到: UPDATE USER_DATA将状态设置= '主动' WHERE user_stats.login < = '$ LAST_LOGIN'

+0

你可能想编辑你以前的问题并删除这个问题;因为你在问同样的事情。 – GendoIkari 2010-11-09 22:10:59

回答

1

类似下面的加盟应该工作:

UPDATE user_data, user_stats 
SET user_data.status='active' 
WHERE user_stats.user_id=user_data.user_id 
AND user_stats.last_login <= '$lastlogin' 

您可能需要更改用于连接更新查询表,以满足您的表中的字段。

0

你必须巢然后将查询:

UPDATE USER_DATA SET状态= '主动' WHERE user_ID的IN(SELECT ID FROM user_stats WHERE登录< = '$ LAST_LOGIN')

总的来说,我建议你考虑一个完全不同的架构

相关问题