您好,我想获取输入特定数据的特定用户 ID。当X用户输入数据并保存时,h将是最后一行。但是我如何以我的用户 id = 16 为例的最后一行。用户可以在他之后插入数据,但我只想要我的用户 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?
这是我的表格(这是一个旧版本,但很高兴知道它现在的数据更加完整,但表格的名称相同)
最佳答案
子查询需要使用联接来选择该用户的最高 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)
关于mysql - 如何选择特定iduser插入的最后一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23658083/