Você pode tentar usar
ORDER
e LIMIT . Tente isto:
UPDATE messages_tbl SET is_unread = 1
WHERE name = 'John'
ORDER BY ReceiveTime DESC
LIMIT 1
Esta consulta atualizará as linhas na ordem do
ReceiveTime mais alto (mais recente) para o menor (mais antigo) ReceiveTime . Usado em conjunto com LIMIT , apenas o ReceiveTime mais recente será alterado.