sql >> Base de Datos >  >> RDS >> Mysql

Obtener la fila más reciente para el ID dado

Usa el agregado MAX(signin) agrupados por id. Esto mostrará una lista de los signin más recientes para cada id .

SELECT 
 id, 
 MAX(signin) AS most_recent_signin
FROM tbl
GROUP BY id

Para obtener el registro único completo, realice un INNER JOIN contra una subconsulta que devuelve solo el MAX(signin) por identificación.

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