Questo sembra soggettivo, ma direi di no, non è concettualmente corretto, perché:
- vuoi la riga inserita più di recente
- ma la tua query esamina l'
id
massimo valore
Sì, esiste una relazione tra max id e inserimento più recente, ma considera quanto segue:
- Cosa succede se la riga inserita più di recente è stata eliminata?
Risposta su MySQL:ottieni risultati diversi. Nota che non è nemmeno necessario che ci siano multithreading o più processi perché questo abbia esito negativo. Questo perché sono due cose diverse (che certamente possono spesso produrre gli stessi risultati).
select max(id) from <tablename>
contro
select last_insert_id()
(Indovina quale ha ragione.)
@Dems ha sottolineato che l'OP è ambiguo. Chiarirò il mio punto principale:
Stiamo parlando di tre diverse informazioni:
- massimo
id
valore id
della riga inserita più di recente, specifica per una sessioneid
della riga inserita più di recente nella tabella (indipendentemente dalla sessione)
La cosa pericolosa è che a volte, interrogare uno darà la risposta giusta per un altro -- ma non sempre .