您好我想获得输入特定数据的特定用户标识。当X用户输入数据并保存h时将是最后一行。但是我如何取最后一行例子我的用户id = 16.Mnay用户可以在他之后插入数据,但我只想要用户ID 16的最后一行。
SELECT *
from
projetstaches
inner join
timesheets
on (timesheets.timId = projetstaches.prtTimeSheetId)
inner join
users
on (users.usrId = timesheets.timUserId)
WHERE
users.usrId = 16 AND `prtTimeSheetId` = (
SELECT MAX( `prtTimeSheetId` )
FROM projetstaches )
当我做这样的事情时,它会返回空白,因为输入内容的最后一个用户是7。
那么如何检索我的上一个用户= 16?
这看起来像我的表(这是一个古老的版本,但很高兴知道它现在看起来像数据现在更完整但表格的名称是相同的)
答案 0 :(得分:0)
子查询需要使用连接为该用户选择最高prtTimeSheetId
,而不是整个表。
SELECT *
from
projetstaches
inner join
timesheets
on (timesheets.timId = projetstaches.prtTimeSheetId)
inner join
users
on (users.usrId = timesheets.timUserId)
WHERE
users.usrId = 16
AND prtTimeSheetId = (
SELECT MAX(preTimeSheetId)
from
projetstaches
inner join
timesheets
on (timesheets.timId = projetstaches.prtTimeSheetId)
inner join
users
on (users.usrId = timesheets.timUserId)
WHERE users.usrId = 16)