Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Ältere Bestellungen eines bestimmten Jahres in Modified löschen

    chhilse81

    • Neu im Forum
    • Beiträge: 7
    Hallo zusammen,

    ich möchte Bestellungen aus einem bestimmten Jahr löschen, ohne den Warenbestand zu verändern. Hat jemand von euch Erfahrungen damit? Gibt es eine Möglichkeit, dies gezielt für ein ausgewähltes Jahr zu tun?

    Über Tipps oder Schritte, die ich beachten sollte, wäre ich sehr dankbar!

    Danke im Voraus!

    Linkback: https://www.modified-shop.org/forum/index.php?topic=43559.0

    Q

    • Fördermitglied
    • Beiträge: 1.536
    Am einfachsten direkt über die Datenbank, bei der das Jahr als WHERE-Filter eingesetzt wird.

    Wenn du nur die Bestellungen aus der Übersicht haben willst, dann reicht es die Bestellungen in der Tabelle orders zu löschen.

    Möchtest Du, dass auch die Bestellten Artikel aus der Verkaufsstatisik fliegen, dann muss noch die Tabellen orders_products, bei Artikeln mit Varianten noch die orders_products_attributes und bei Downloadprodukten die orders_products_download um diese Bestellungen bereinigen. Dafür entweder die Range der Bestellnummern nutzen oder einen JOIN auf die products Tabelle und auf NULL prüfen, dies gilt auch für die nachfolgenden Punkte.

    Wenn die Bestellungen auch noch aus der Umsatzstatisik raus sollen, muss die die orders_total bereinigt werden.

    Dann hat man noch etwas "Datenmüll". In der orders_tracking, falls man Sendungsnummern hinterlegt hat und die Tabelle orders_status_history .

    Grob würde ich sagen, war es das.

    chhilse81

    • Neu im Forum
    • Beiträge: 7
    Vielen Danl für die Antwort. Wäre das dann der richtige Befehl um alle alle Einträge vor einem bestimmten Datum zu löschen?

    DELETE FROM `orders` WHERE `date_purchased` < '2022-12-31'

    Oder so um einen Zeiträume zu definieren?

    DELETE FROM `orders` WHERE `date_purchased` BETWEEN '2022-01-01' AND '2022-12-31'

    Q

    • Fördermitglied
    • Beiträge: 1.536
    Du kannst das sehr gut selber testen, wenn du das DELETE durch ein SELECT ersetzt. Wenn das Ergebnis deiner Erwartung entspricht, passt auch das DELETE Statement. Wenn es nicht klappt, versuche es indem zu `date_purchased` durch DATE(date_purchased) ersetzt.

    Unterwegs kann ich das immer schlecht selbst gegenprüfen.

    chhilse81

    • Neu im Forum
    • Beiträge: 7
    Ich danke dir. Hat bestens geklappt. Schönes Wochenende wünsche ich ☀️.
    2 Antworten
    1709 Aufrufe
    29. Januar 2018, 15:51:45 von Michael.TB
    11 Antworten
    8622 Aufrufe
    09. September 2012, 11:33:25 von jannemann
    12 Antworten
    6076 Aufrufe
    24. Dezember 2012, 15:50:16 von Ben Tanabe
    10 Antworten
    6878 Aufrufe
    18. Juli 2014, 22:52:44 von ShopNix
               
    anything