不爽,一开始想错了,表连接查询全搞定了,最后发现条件需要在WHERE中限定,自己以后还是要将表连接完,查询出所有数据先看看,然后再根据结果加各种条件,不然容易出现细节上的问题。
SELECT u.name,c.name,l.date FROM login l JOIN user u ON l.user_id=u.id JOIN client c ON l.client_id=c.id WHERE (l.user_id,l.date)IN( SELECT user_id, MAX(date) FROM login GROUP BY user_id) ORDER BY u.name