Hallo zusammen.
Ich probiere jetzt schon die ganze Zeit herum und komme nicht weiter. Ich hoffe ihr könnt mir weiterhelfen. Da mein MySQL Wissen gering ist, bin ich aber zuversichtlich, dass ihr die Lösung wisst. :-)
Zur Vorabinfo: Es handelt sich um eine Oscommerce Datenbank. Meine Frage dreht sich um die Tabelle products_stock.
Ich habe mit dem folgenden Befehl in der Tabelle products_stock EAN-Nummern ermittelt, die mehr als 1x mal vorkommen (was nicht gewünscht ist):
Code:
SELECT products_id, `products_ean`, COUNT(*) AS zaehler FROM `products_stock` GROUP BY `products_ean` HAVING zaehler > 1
Ein Auszug aus dem Ergebnis: Screenshot siehe Bild1.jpg
Als Beispiel mal die erste EAN aus dem Ergebnis: Screenshot siehe Bild2.jpg
Ich benötige bei den folgenden 2 Schritten Hilfe:
1) Ich möchte jetzt gerne die Zeilen von den doppelten EAN löschen, die stock_quanity = 0 haben.
2) Es gibt auch die Möglichkeit, dass die stock_quantity bei allen EAN > 0 (z.B. 100 oder 1000) ist. Dann soll die Zeile mit der kleineren products_stock_id gelöscht werden.
Mein Ziel ist also, dass nachher nur eine EAN überbleibt, mit Menge > 0 und der höchsten stock_id.
Ich weiß, es klingt sehr wirr, aber ich hoffe, ihr helft mir trotzdem mit dem Syntax. Danke dafür im voraus.
Ich hoffe ich konnte mein Anliegen schildern. Ich würde mich sehr über Ihren Rat, wie der Syntax lauten muss, freuen.