Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [mysql] jak usunąć rekord o nawiększym numerze id
Forum PHP.pl > Forum > Przedszkole
Gość
Probowałem czegoś takiego
  1. DELETE FROM tabela WHERE id = MAX(id)

ale niestety nie działa, zapytanie się wykonuje ale nic nie usuwa (sprawdzałem w phpmyadmin)
Jak usunąć rekord o maksymalnym id?
nospor
Twoje zapytanie jest bledne. Tak sie nie uzywa MAX. Jakos kiepsko korzystasz z PMA, gdyz powinien ci bledy wywalic.

  1. DELETE FROM tabela ORDER BY id DESC LIMIT 1;
MatheW
  1. DELETE FROM tabela WHERE id = (SELECT MAX(id) FROM tabela)
nospor
ale poco podzapytania do takich prostych rzeczy?
SongoQ
Podzapytanie tu bedzie dobre jesli na polu nie masz indeksu. Ale i tak uzyj Explain zeby sie przekonac.
nospor
ale ID to zazwczyaj klucz glowny i na nim jest zazwyczaj index smile.gif
Ale dobra, uzyj explain winksmiley.jpg

edit: podzapytanie ma jedna glowna wade. jest dopiero od ktorejs tam wersji mysql, ktorej nie wszyscy maja

edit po poscie nizej:
no, i trzeba bylo tak od razu winksmiley.jpg
SongoQ
@nospor Twoja wersja jest i tak wydajniejsza dla id smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.