mysql left join 右表数据不唯一的情况解决方法
<pre>
member 表
id username
1 fdipzone
2 terry
member_login_log 表
id uid logindate
1 1 2015-01-01
2 2 2015-01-01
3 1 2015-01-02
4 2 2015-01-02
5 2 2015-01-03
select a.id, a.username, b.logindate
from member as a
left join (select uid, max(logindate) as logindate from member_login_log group by uid) as b
on a.id = b.uid;
</pre>
ps:使用left join的两个表,最好是1:1 这样可以保证A表的记录全部显示,B表显示符合条件的记录。
如果B表符合条件的记录不唯一,就需要检查表设计是否合理了。