求一条多表查询SQL语句

来源:百度知道 编辑:UC知道 时间:2024/05/30 15:11:33
现在是这种情况
有个
member 表
userid,username
a,小王
b,小张

Log 表
userid,Logtime
a,2008-05-05
a,2008-05-04
b,2008-01-02
b,2008-03-04

一条member表里的记录多条LOg表记录
现在要通过SQL语句查询出每个用户名及该用户的最后一次登陆时间
查询结果
userid,username,logtime
a,小王,2008-05-05
b,小张,2008-03-04

万分感谢.

你好,这个题目很简单呀。
两个表通过唯一标识userid去做关联即可。
下面是你要的语句。

select a.userid,a.username,max(b.logtime) from member a,Log b
where a.userid=b.userid
group by a.userid,a.username

希望可以帮到你。

select a.userid,max(a.username),max(b.logtime) from member a inner join Log b on
a.userid=b.userid
group by a.userid
这个效率最高

数据量很小,一楼的已经可以了,我来优化下,符合你的查询结果方式
select a.userid as userid,a.username as username,max(b.logtime) as logtime from member a,Log b
where a.userid=b.userid
group by a.userid,a.username

select member.userid,member.username,max(Log.logtime) from member member,Log
where member.userid=Log.userid
group by member.userid,member.username

同意一楼的答案!
select a.userid,a.username,max(b.logtime) from member a,Log b
where a.userid=b.userid
group by a.userid,a.username

select a.userid,a.username,max(b.logtime) from member a,Log b
where a.userid=b.userid
group by a.userid,a.us