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
idmá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
idvalor idda linha inserida mais recentemente, específica para uma sessãoidda 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 .