Utilisez l'agrégat MAX(signin) regroupés par identifiant. Cela répertoriera la signin la plus récente pour chaque id .
SELECT
id,
MAX(signin) AS most_recent_signin
FROM tbl
GROUP BY id
Pour obtenir l'intégralité de l'enregistrement, effectuez un INNER JOIN contre une sous-requête qui ne renvoie que le MAX(signin) par identifiant.
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