Vergleich mit Zeile davor

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Nirus2000
    antwortet
    Gut.... ich versuche es besser zu beschreiben..

    die Abfrage vereinfacht...
    PHP-Code:
    SELECT IDWERT1WERT2  
    FROM  
    `Tabelle1
    WHERE  `id`  = XYZ
    ORDER  BY  
    `Tabelle1`.`ID`  DESC LIMIT 10 
    wird dann wie folgt ausgegeben per While-Schleife ausgegeben:

    ID | WERT1 | WERT 2
    1000 | 16516 | 2156165
    800 | 54561 | 16516
    25 | 5116 | 1561

    soo...

    nun soll der Wert in dieser While-Schleife mit den zuvor ausgegebenen verglichen werden.
    Mit der Sortierung ASC ist das kein Problem... in einen Dummy den WERT1 bzw. WERT2 speichern und dann wieder vergleichen.
    Da ich aber DESC sortiere, kann ich den Wert nicht in einen Dummy speichern, weil Wert davor noch nicht existiert. Desweiteren sind die ID's nicht fortlaufend sondern unsortiert.

    Beispiel anhand von irgendwelchen ID's wie es jetzt ist mit Speicher Variable:

    WHILE-ID -> VEGLEICHS-ID
    8204 -> 0
    5970 -> 8204
    5345 -> 5970
    4715 -> 5345
    4021 -> 4715
    3385 -> 4021
    2731 -> 3385
    2063 -> 2731
    1427 -> 2063
    779->1427

    richtig wäre aber

    WHILE-ID -> VEGLEICHS-ID
    8204 -> 5970
    5970 -> 5345
    5345 -> 4715
    4715 -> 4021
    4021 -> 3385
    3385 -> 2731
    2731 -> 2063
    2063 -> 1427
    1427 -> 779
    779 -> 0

    Einen Kommentar schreiben:


  • wahsaga
    antwortet
    Zitat von Nirus2000 Beitrag anzeigen
    hmm... würde ich ja gerne machen, aber DESC ist nun mal nicht ASC...
    Dann ist vorhergehende Zeile halt nächste Zeile.

    Wenn du unsere Hilfe bei deinem Problem willst, dann beschreibe bitte deutlich und in ausreichender Ausführlichkeit, was dir Probleme bereitet.

    Einen Kommentar schreiben:


  • Nirus2000
    antwortet
    hmm... würde ich ja gerne machen, wäre auch zu einfach, aber DESC in MySql ist nun mal nicht ASC...
    (rückwärts/vorwärts)
    Zuletzt geändert von Nirus2000; 31.03.2011, 12:24. Grund: Erweiterung

    Einen Kommentar schreiben:


  • AmicaNoctis
    antwortet
    Hallo,

    warum ermittelst du die Differenz nicht mit PHP? Das wäre doch das einfachste.

    Gruß,

    Amica

    Einen Kommentar schreiben:


  • Nirus2000
    antwortet
    Ich möchte auf der einen Seite den Inhalt limitieren mit max 10 Anzeigen und auf der anderen Seite die Änderungen der Werte darstellen. Also zb. wie weit hat sicht der Wert1 von ID 1000 zu ID 800 geändert.

    Einen Kommentar schreiben:


  • wahsaga
    antwortet
    Was willst du damit bezwecken?

    Stichwort wäre korrelierte Unterabfrage.
    (Ggf. wäre auch ein SELF JOIN möglich, wobei ich mir da gerade nicht ganz vorstellen kann, wie man dort die „vorherige Zeile“ selektiert bekommt.)

    Einen Kommentar schreiben:


  • Nirus2000
    hat ein Thema erstellt Vergleich mit Zeile davor.

    Vergleich mit Zeile davor

    Hallo,

    folgendes Problem... ich habe eine Abfrage die DESC steht...

    z.B.
    PHP-Code:
    SELECT IDWERT1WERT2  
    FROM  
    `Tabelle1
    WHERE  `id`  = XYZ
    ORDER  BY  
    `Tabelle1`.`ID`  DESC LIMIT 10 
    Soo... Ergebnis sieht dann z.B. so aus

    ID | WERT1 | WERT 2
    1000 | 16516 | 2156165
    800 | 54561 | 16516
    25 | 5116 | 1561

    Wie ist es möglich, den Wert mit der vorhergehenden Zeile zu vergleichen, also ID 1000 mit 800 und 800 mit 25??
Lädt...
X