ich habe in einem Shop System, eine Tabelle product_sales mit dem Aufbau:
category_id | product_id | amount
Hier geht es darum, wie oft ein Produkt bisher verkauft worden ist und mir geht es darum die Top Produkte zu ermitteln.
Mein SQL sieht bisher so aus:
select product_id, count(product_id) as qty from product_sales group by product_id order by qty desc limit 25
Ohne der category_id in der Tabelle würde der SQL funktionieren! Leider weiß ich nicht wie der SQL mit der category_id aussehen müsste und ob dies überhaupt mit einer einzigen Abfrage zu bewältigen ist.
Wer kennt sich hier etwas aus und kann mir da helfen.
so wie ich das verstanden haben geht es auch ohne die category_id.
es sei den du willst wissen ( wenn der Product ( gleiche Produkt ) in mehreren Kategorien ist, wie oft der Produkt in der Kategore verkauft worden ist!
( der am meisten ist dann auch TOP )
und dann geht nur wenn der Produkt verlinkt ist und nicht Kopiert ist!
dann glaube ich hat der Produkt eine andere ID.
Alle angaben ohne gewähr
Da einfachste ist das rauszunehmen ist mir klar, allerdings möchte ich so wenig wie möglich an den original Funktionalitäten ändern, um weiterhin neuste updates einspielen zu können. daher suche ich nach nem weg es so zu lesen. Ferner sind die gewonnen Information aus der category_id ja auch auswertbar, was wiederum gut ist.
Boah, war ich mal wieder dumm. Hätte ich den Code nicht umgeschrieben (von einem XTC Datenscript), sondern neu gebaut, wäre das Missgeschick nicht passiert.
So lautet es richtig:
select product_id, sum(amount) as qty from product_sales group by product_id order by qty desc limit 25
Zu einem brauche ich sum, damit die Anzahl addiert wird, die in amount steht. Logisch eigentlich.
Naja, dafür können ab morgen dann die endlich die Bestseller generiert werden