Isso parece subjetivo, mas eu diria que não, não é conceitualmente certo, porque:
- você deseja a linha inserida mais recentemente
- mas sua consulta analisa o
id
máximo valor
Sim, existe alguma relação entre o id máximo e a inserção mais recente, mas considere o seguinte:
- e se a linha inserida mais recentemente foi excluída?
Resposta no MySQL:você obtém resultados diferentes. Observe que nem precisa haver multithreading ou vários processos para que isso falhe. Isso porque são duas coisas diferentes (que, reconhecidamente, muitas vezes podem produzir os mesmos resultados).
select max(id) from <tablename>
vs
select last_insert_id()
(Adivinhe qual está certo.)
@Dems apontou que o OP é ambíguo. Vou esclarecer meu ponto principal:
Estamos falando de três informações diferentes:
- máximo de
id
valor id
da linha inserida mais recentemente, específica para uma sessãoid
da linha inserida mais recentemente na tabela (independentemente da sessão)
O perigoso é que, às vezes, consultar um dará a resposta certa para outro -- mas nem sempre .