Podría intentar usar ORDER
y LIMIT .
Prueba esto:
UPDATE messages_tbl SET is_unread = 1
WHERE name = 'John'
ORDER BY ReceiveTime DESC
LIMIT 1
Esta consulta actualizará las filas en orden de mayor (más reciente) ReceiveTime al menor (más antiguo) ReceiveTime . Usado junto con LIMIT , solo el ReceiveTime más reciente será alterado.