• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

MySql - Zeilen einer Tabelle vergleichen

Teratek

Neues Mitglied
Hallo Forum,

ich habe wohl gerade eine Blockade

Ich habe hier eine Tabelle, in der ich überprüfen möchte ob ein bestimmter Wert der einen Zeile größer ist als ein Wert der anderen.

Tabelle sieht so aus:

IndexArtikelab_mengepreis
11110
21108
32112
421010
5210011
63113,5
731013,6

Genauer gesagt soll er mir alle Zeilen rausfiltern, bei denen der Preis einer Mengenrabattstaffel aus Versehen größer ist als bei der Menge davor

Hier im Beispiel also Index 5 und 7

meine Abfrage ist
PHP:
select * from tabelle where Artikel = Artikel and ab_menge > ab_menge and preis > preis

Hab ich da nen Denkfehler?
 
Werbung:
Hab ich da nen Denkfehler?
Ja, sieht nach nem ziemlich offensichtlichen aus ... ab_menge > ab_menge ... das trifft halt nie zu.
Um zwei unterschiedliche Datensätze zu vergleichen brauchst du zwei Tabellen, die du aber auch simulieren kannst. Das sähe dann etwa so aus:
Code:
SELECT
    *
FROM
    tabelle as t1,
    tabelle as t2
WHERE
    t1.Index = t2.Index -1      # t1 steht in der Zeile vor t2
AND
    t1.ab_menge > t2.ab_menge
Probier das mal in der Art. Das ist auch nicht wirklich elegant, da der Code davon ausgeht, dass die Zeilen fortlaufend nummeriert sind, und darauf sollte man sich nicht verlassen.

 
Zurück
Oben