Constantin K: Daten aus MySQL DB sortieren

Hallo allerseits,

Ich bin Hobby-PHP-Bastler und bin gerade auf meine Grenzen gestoßen. Vielleicht hat ja hier jemand eine Idee zur Lösung meines Problems?

Ich habe eine MySQL Datenbanktabelle, in der jedem Datensatz ein Fahrzeug entspricht. Die Fahrzeuge haben drei "Seriennummern", welche da sind: Fahrzeugnummer, Fahrgestellnummer und Motornummer. Diese Nummern sind Felder in der Tabelle.

Wenn ich die Daten abrufe, lasse ich die Datensätze aufsteigend nach der Fahrzeugnummer sortieren, da diese eine chronologische Ordnung der Fahrzeuge erlaubt. Es gibt jedoch auch unvollständige Datensätze, wo die Fahrzeugnummer fehlt. In diesem Fall soll die Fahrgestellnummer herangezogen werden. Der Datensatz soll sich dann in der Ordnung an jenen Datensatz anreihen, der die nächstniederere Fahrgestellnummer hat.

z.B:

----------------------------------------------
| Fzg-Nr.      | Fahrgest-Nr. | Motor-Nr.    |
----------------------------------------------
| 5            | 7            | 7            |
| 9            | 11           | 12           |
| 14           | 15           | 15           |
|              | 17           | 18           | <- Unvollständig
| 19           | 20           | 21           |
----------------------------------------------

Ich habe mir überlegt, bei jedem unvollständigen Datensatz eine Abfrage zu machen, wo sein "nächstgelegener" Datensatz ist, aber wie kann ich den unvollständigen Datensatz dann dort einfügen?

Ich weiß da nicht aus. Würde mich über Tipps sehr freuen!

Danke schon im Voraus und schöne Grüße,
Constantin

  1. Hallo,

    Ich habe mir überlegt, bei jedem unvollständigen Datensatz eine Abfrage zu machen, wo sein "nächstgelegener" Datensatz ist, aber wie kann ich den unvollständigen Datensatz dann dort einfügen?

    Mir ist nicht bekannt, dass ein Satz beim SELECT Daten eines anderen bekommt. Wie sollte das auch gehen? Zuerst werden die Sätze wild durcheinander herausgepickt und im zweiten "Durchgang" sortiert.

    Der "Pick-Durchgang" kennt also die späteren Nachbarn nicht.

    Dein Problem wirst du wohl mit PHP erledigen müssen. Die Menge der unvollständigen Datensätze vorhalten, die vollständigen abarbeiten und immer schauen, ob von den unvollständigen einer dazwischenpasst.

    Kalle