Zdá se to subjektivní, ale řekl bych, že ne, není to koncepčně správné, protože:
- chcete naposledy vložený řádek
- ale váš dotaz se dívá na maximální
id
hodnotu
Ano, mezi max id a nejnovější vložkou existuje určitý vztah, ale zvažte následující:
- co když byl smazán naposledy vložený řádek?
Odpověď na MySQL:získáte různé výsledky. Všimněte si, že ani nemusí být vícevláknové nebo více procesů, aby to selhalo. Je to proto, že jsou to dvě různé věci (které nepochybně často mohou vést ke stejným výsledkům).
select max(id) from <tablename>
vs
select last_insert_id()
(Hádejte, který z nich je správný.)
@Dems poukázal na to, že OP je nejednoznačný. Vysvětlím svůj hlavní bod:
Hovoříme o třech různých informacích:
- maximální
id
hodnotu id
z naposledy vloženého řádku, specifického pro relaciid
řádku naposledy vloženého do tabulky (bez ohledu na relaci)
Nebezpečné je, že někdy dotaz na jednoho poskytne správnou odpověď na druhého – ale ne vždy .