MySQL - Den nächsten und vorherigen Datensatz ermitteln

Ein Beispiel für eine so genannte Blätter-Funktion (Pagination). Der Platzhalter $id enthält eine ID (z.B.: vom Ergebnis einer Suchanfrage an die DB).

// Der vorherige Datensatz (sortiert nach dem Datum)

SELECT `date`, `name`, `id`
 FROM `table` 
 WHERE `date` < ( SELECT `date` FROM `table` WHERE `id` = $id )
 ORDER BY `date` DESC LIMIT 0,1


// Der nächste Datensatz (sortiert nach dem Datum)

SELECT `date`, `name`, `id`
 FROM `table` 
 WHERE `date` > ( SELECT `date` FROM `table` WHERE `id` = $id )
 ORDER BY `date` ASC LIMIT 0,1

// Der vorherige Datensatz (sortiert nach dem Namen)

SELECT `date`, `name`, `id`
 FROM `table` 
 WHERE `name` < ( SELECT `name` FROM `table` WHERE `id` = $id )
 ORDER BY `date` DESC LIMIT 0,1


// Der nächste Datensatz (sortiert nach dem Namen)

SELECT `date`, `name`, `id`
 FROM `table` 
 WHERE `name` > ( SELECT `name` FROM `table` WHERE `id` = $id )
 ORDER BY `name` ASC LIMIT 0,1

Bausteine

Eine zufällige Auswahl von „Bausteinen” (Snippets) aus den Bereichen CSS, PHP, JavaScript und MySQL.

CSS - Wasserzeicheneffekt - Hintergrundbild fixieren

PHP - Lange Wörter trennen

JavaScript - Frames per Link nachladen

MySQL - Flexible Insert-Funktion