Huhu zusammen Nach etwas Stöbern bin ich zu folgendem Ergebnis gekommen, das zwar funktioniert, aber sicherlich eleganter zu lösen ist. Weiß jemand Rat für mich? Ich habe eine Tabelle mit Events, die mit dem Feld "Index" als autoincrement versehen ist, mit einem SELECT nach Datum sortiert. Von einem Eintrag habe ich dessen "Index" - also die Show, um die es geht. Nu will ich dessen direkten, wie oben gesagt nach Datum sortierten, Vorgänger und Nachfolger haben (also nicht der Index ist sortiert! Vorgänger nachfolger tabelle von. ). Ich will jetzt zB wissen, welche Show vor und nach dem gewählten Index "SuchIndex" stattfindet: --- schnipp --- Code: // erst alle Indexe aus der Events-Tabelle sammeln sortiert nach 'EventDate' $sAll = 'SELECT `Index` FROM `Events` ORDER BY `EventDate` ASC'; $resAll = mysql_query( $sAll); // hier ist das erste Element $rowPred = mysql_fetch_array( $resAll); // jetzt tapfer loopen... while ( $rowAll = mysql_fetch_array( $resAll)) { // prüfen, ob dies das gesuchte Element ist if ( $rowAll['Index'] == $SuchIndex) // ja, das isses!
Diese Links versuchst du nun zu finden, oder? Falls ja, nutze dass du einen eindetigen Index hast und lasse das Select nicht nur nach Datum, sonder auch noch nach Index in 2. Instanz, also bei gleichem Datum sortieren. Dann kannst du den Vorgänger ganz einfach mit SELECT * FROM `tabelle` WHERE `datum` <= 'aktuelles' AND `index` < AKTUELLER_INDEX ORDER BY `datum` (ASC /DESC), `index` ASC LIMIT 1 Das ganz mit umgedrehten Vergleichen liefert dir die andere Seite. Vielleicht habe ich das auch komplett falsch verstanden, aber wenn es so ist wie ich denke, braucht man da keinerlei JOIN oder POSTGRESQL. mysql ist veraltet Mails senden: Ohne Probleme und ohne mail() echo 'PS: Meine Antwort ist keine Lösung, sondern nur eine Hilfe zur Lösung. '; Nicht dass ich das nicht gerade auch geschrieben hätte. Vorgänger nachfolger tabelle mit. Allerdings ist die ID eben kein geeignetes Sortierkriterium, wie Du ja selbst schreibst. Dann kann ich die nicht im gleichen Atemzug in die Query einbauen. Wer sagt, dass es einen solchen Datensatz geben muss: WHERE `datum` <= 'aktuelles' AND `index` < AKTUELLER_INDEX (Ich gehe mal davon aus, dass Du mit Index die ID (Id == Identifier, nicht Index) meinst. )
≡ Start I Mathe 3 I Vorgnger Nachfolger Der Vorgnger Der Vorgnger ist die Zahl, die vor einer anderen Zahl steht. Beispiel: Die Zahl 6. Vor der Zahl 6 steht die Zahl 5. Die 5 ist der Vorgnger der Zahl 6. Den Vorgnger berechnen Den Vorgnger kann man berechnen, wenn man von einer natrlichen Zahl eins abzieht. Beispiel: Die natrliche Zahl ist 9. Rechnung: 9 - 1 = 8. Der Vorgnger ist die Zahl 8. Der Nachfolger Der Nachfolger ist die Zahl, die nach einer anderen Zahl steht. Beispiel: Die Zahl 3. Nach der Zahl 3 steht die Zahl 4. Die 4 ist der Nachfolger der Zahl 3. In einem SELECT-Ergebnis Vorgänger und Nachfolger finden - php.de. Den Nachfolger berechnen Den Nachfolger kann man berechnen, wenn man zu einer natrlichen Zahl eins addiert. Beispiel: Die natrliche Zahl ist 6. Rechnung: 6 + 1 = 7. Der Nachfolger ist die Zahl 7. Nachbarzahlen Die beiden Wrter Vorgnger und Nachfolger kann man auch als Nachbarzahlen bezeichnen. Beispiele: Die Nachbarzahlen von 15 sind 14 und 16. (... 11 12 13 14 15 16 17 18... ) Die Nachbarzahlen von 210 sind 209 und 211.
Um zum kleinen Nachbarn zu gelangen, subtrahierst du eine Sprungzahl. Um von 740000 zum großen Nachbarhunderttausender 800000 zu gelangen, addierst du 60000. Um zum kleinen Nachbarhunderttausender 700000 zu gelangen, subtrahierst du 40000.