下面是我的桌子:

1. tbluser
UserNumber - PK
Name
MemberType - Number
StationNumber - FK (connected to StationNo of tblStation)

2.tblStation
StationNo - PK
StationName

3.tblUserLogs
LogID - PK
UserID - FK (connected from UserNumber of tblusers)
LastLog

我要做的就是显示MemberType不等于1的Name(tblusers)、StationName(tblStation)和LastLog(tblUserLogs)。
这是我的尝试。。。
SELECT tblusers.FirstName, tblstation.StationName, tblUserLogs.LastLog
FROM (tblstation INNER JOIN tblusers ON tblstation.StationNo = tblusers.StationNumber)
     INNER JOIN tblUserLogs ON tblusers.UserNumber = tblUserLogs.UserID
WHERE (((tblusers.MemberType)<>1))

但是,我得到了用户的重复记录。它显示所有的最后日志数据,而不是最新的。
我该怎么做?

最佳答案

使用此查询:

SELECT tblusers.FirstName, tblstation.StationName, MAX(tblUserLogs.LastLog)
FROM (tblusers LEFT JOIN tblstation ON tblstation.StationNo = tblusers.StationNumber)
     LEFT JOIN tblUserLogs ON tblusers.UserNumber = tblUserLogs.UserID
WHERE tblusers.MemberType != 1

关于mysql - LIMIT显示其他表格字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20281085/

10-12 19:07