Natürliche Sortierung von MySQL Datenbank Resultset

Dieses Thema Natürliche Sortierung von MySQL Datenbank Resultset im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von Michael_B, 11. März 2003.

Thema: Natürliche Sortierung von MySQL Datenbank Resultset Morgääähn, ich hab da ein Problem mit meiner DB. Wie kann ich es bewerkstelligen, dass das Resultset, also die...

  1. Morgääähn,

    ich hab da ein Problem mit meiner DB. Wie kann ich es bewerkstelligen, dass das Resultset, also die Daten, die ich aus einer Tabelle raussuche, in natürlicher Order abgegeben werden, also so dass 1 vor 10 kommt?
    Ich hoffe ich hab mich verständlich ausgedrückt.

    Wäre schön, wenn das ohne großartige Umwege funktionieren könnte. Stelle mir das so vor, dass ich ein weiteres Flag hinter die Order-Anweisung setze, wie z. B. ORDER BY name DESC NAT oder sowas.

    Thx 4 Response

    Edit:
    Die Spalte, nach der sortiert werden soll, ist natürlich ein VARCHAR, kein INT oder dergleichen.
     
  2. Hi

    Gefunden bei mysql.com :

    Gruß, Michael
     
  3. Danke, das war auf jeden Fall schonmal ein sehr geiler Tipp. Leider funkt das trotzdem nicht immer. Meistens, aber eben nicht immer. Als Beispiel hier mal folgendes Ergebnis:

    IL-2 Secretion Assay
    IL-2 Secretion Assay
    IL-4 Secretion Assay
    IL-4 Secretion Assay
    IL-10 Secretion Assay
    IL-10 Secretion Assay
    IL-2 Secretion Assay
    IL-5 Secretion Assay
    IL-5 Secretion Assay
    IL-5 Secretion Assay

    Habe bereits in der DB nachgeguckt, ob bei den Einträgen vielleicht irgendwas anders ist, als bei den Einträgen, wo diese Sortierung auch richtig funktioniert. Hast du vielleicht ne Idee, woran das liegen könnte?
     
  4. Hi

    In dem Fall lass doch einfach die ersten 3 Buchstaben abschneiden und dann danach sortieren.
    Oder falls sich vorne die Buchstaben auch ändern sollten, mach zwei Kriterien, das erste die Buchstaben vorne, das zweite die Zahlen dahinter.

    Gruß, Michael
     
  5. In diesem speziellen Fall wäre das natürlich angebracht, aber das war ja auch nur ein Beispiel... Das passiert auch bei anderen Produkten aus der DB. und da kann ich nicht einfach die ersten 3 zeichen abschnibbeln, weil die für die Sortierung relevanten Zahlen nicht immer ab der 4. Stelle stehen.
     
  6. Hi

    Dann wirst du wohl um eine eigene Sortierfunktion nicht herumkommen, die nachträglich deine Daten sortiert.

    Algorithmus: Quicksort
    Den Vergleich zweier Elemente müsste man dann anpassen.

    Gruß, Michael
     
  7. Danke... das habe ich mir auch schon so gedacht. Schade eigentlich...
    Naja, vielleicht reicht es dem Webmaster ja so...

    Für mich erledigt.
     
  8. IL-2 Secretion Assay
    IL-2 Secretion Assay
    IL-10 Secretion Assay
    IL-10 Secretion Assay

    eine Idee die ich vorschlage ist das du dir wenn es nur die eine stelle mit zahlen gibt, die zahlen definition rausholst (regexp), und danach sortiertst,
    oder soll text auch immer nach mitsortiert werden weil auch buchstaben sortiert werden sollen?
    dann wird kompliziert auch da hilft vielleicht meine idee weiter.
     
Die Seite wird geladen...

Natürliche Sortierung von MySQL Datenbank Resultset - Ähnliche Themen

Forum Datum
Wiedescreen TFT mit Natürlicher farbwiedergabe gesucht. Sonstiges rund um den PC & Kaufberatung 6. Jan. 2007
Sortierung im Windows Explorer Windows XP Forum 28. Mai 2013
Sortierung nach eigenen Belieben ändern !!! Windows 7 Forum 2. Mai 2010
Beliebige Dateisortierung mit drag&drop Windows 7 Forum 28. Okt. 2009
Sortierung in Excel 2002 Windows XP Forum 14. Sep. 2008