Czy istnieje możliwość takiego pooperowania kodem SQL, by uzyskać identyfikator poprzedniego i następnego rekordu następującego po wybranym wierszu?
Idea jest prosta mam wyszukiwarkę, która składa się z kilku pól i ona generuje pewne wyniki wyszukiwania, np.
dla tabeli ZAKUPY ( przykładowo )
id_rekordu | nazwa_produktu | ilosc_produktow | klient
1 | ser | 2 | kowalski
2 | mleko | 12 | kowalski
3 | ser | 12 | marcel
4 | ser | 22 | jurzsyyk
5 | mleko | 3 | iksik
I teraz chciałbym uzyskać tych klientów, który kupili ser, czyli wyniki wyszukiwania powinny zwrócić następujące osoby:
id_rekord | klient
1 | kowalski
3 | marcel
4 | jurzsyyk
I teraz w momencie wyświetlenia wyników wyszukiwania wybieram do wyświetlenia informacje o kliencie 3, a także chciałbym posiadać informacje dotyczace wcześniej w jaki sposób można uzyskać informacje o rekordzie, który jest przed nim w wynikach wyszukiwania, czyli o klienci (1) oraz następującego po nim.
Oczywiście oprócz wybraniach danych należało by wykonać ponownie zapytanie wyszukujace, tylko w jaki sposób dostać do poprzedniego i następującego po nim? Jak to będzie w przypadku gdy lista zwróconych wyników zostanie posortowana według kolumny klient, więc uzyskamy takie wyniki:
id_rekord | klient
4 | jurzsyyk
1 | kowalski
3 | marcel
Teraz klient 3 nie ma nastepnika, natomiast poprzednikiem jest ten z identyfikatorem 1.
Czy można to w ogóle rozwiązać bez używania php ? Jeśli tak to jak można to zrobić, a jeśli nie, to jaki jest najlepszy zrobienia tego w php?