Използвайте обобщения MAX(signin)
групирани по id. Това ще покаже най-новото signin
за всеки id
.
SELECT
id,
MAX(signin) AS most_recent_signin
FROM tbl
GROUP BY id
За да получите целия единичен запис, извършете INNER JOIN
срещу подзаявка, която връща само MAX(signin)
на идентификатор.
SELECT
tbl.id,
signin,
signout
FROM tbl
INNER JOIN (
SELECT id, MAX(signin) AS maxsign FROM tbl GROUP BY id
) ms ON tbl.id = ms.id AND signin = maxsign
WHERE tbl.id=1