求指导贴,mySQL数据更新的问题
直接切入了:
有下面两张表
表A:记录用户ID和最后一次登录时间
id lastLoginTime
1 time1
3 time3
4 time4
7 time7
8 time8
9 time9
表B:记录每个用户所有登录时间
id LoginTime
1 time101
1 time102
1 time103
1 time1
4 time4
7 time7
8 time8
9 time901
9 time902
现在用update语句把表B里面的每一个用户的最后登录记录 更新为表A中的lastLoginTime
刚试了好一会儿 没有成功,请指教
------解决方案--------------------
update a
set lastLoginTime = b.LoginTime
from
(
select id,max(LoginTime) LoginTime from b group by id
)b where a.id = b.id
------解决方案--------------------是想把表B改成这样的数据吗?
表B:记录每个用户所有登录时间
id LoginTime
1 time1
1 time1
1 time1
1 time1
4 time4
7 time7
8 time8
9 time9
9 time9
如果是这样就非常简单,
update B,A set B.LoginTime = A.lastLoginTime where A.id = B.id