Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak pobrac ostatni rekord...
Forum PHP.pl > Forum > Bazy danych > MySQL
alex19
, ale nie ostatni w tabeli.
Juz tlumacze o co chodzi.
Mam sobie tabele w ktorej jest id, opis, numer, kategoria, kod. Numer jest kolejnym numerem dla kategori, a kod to kategoria*1000+kod.

Gdy chce dodac nowa pozycje to potrzebuje dowiedziec sie jaka byla ostatnia dla danej kategorii. Teraz pytanie jak to zrobic?

W tej chwili robie to tak:
  1. $zapytanie="select max(numer)
  2. from tab
  3. where id_kategori='$_POST[id_kategori]'";

  1. <?php
  2.  
  3. $dane=mysql_fetch_assoc(mysql_query($zapytanie));
  4. $numer=$dane['max(numer)']+1;
  5. $kod=$_POST['id_kategori']*1000+$numer;
  6.  
  7. ?>

Jednak wolalbym wybierac ostatnia pozycje, a nie maksymalana. Czy da sie to jakos zrobic?
Spike
jeśli id jest twoim kluczem unikalnym to wystarczy ze wybierzesz

  1. $zapytanie="select numer
  2. from tab
  3. ORDER by id DESC LIMIT 1";
alex19
Ale chyba musze jeszcze dodac
  1. WHERE id_kategori='$_POST[id_kategori]'

bo inaczej dostane ostatni wpis w tabeli, a nie dla danje kategori?
Spike
Oczywiscie musisz winksmiley.jpg
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-2024 Invision Power Services, Inc.