Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
mysql [2025/06/26 18:36] – [FA-Test-Bestellung löschen] geraldmysql [2025/06/27 11:35] (aktuell) – [FA-Test-Bestellung löschen] gerald
Zeile 492: Zeile 492:
 </code> </code>
  
-Echtes Löschen: (ACHTUNG! Löscht auch verwaiste Bestellungen (Bestellung ohne items))!+Echtes Löschen: (ACHTUNG! Löscht auch Bestellungen, bei denen nur ein einziger Item-Eintrag mit 'I: ' beginnt (was ja nicht vorkommen sollte))
  
 <code> <code>
 START TRANSACTION; START TRANSACTION;
  
--- 1. Lösche alle vault_order_items mit dir LIKE 'I:%' +-- 1. Lösche alle vault_order, deren *alle* Items mit 'I:' beginnen
-DELETE FROM vault_order_items +
-WHERE dir LIKE 'I:%'; +
- +
--- 2. Lösche nur solche vault_order, deren order_id ausschließlich in den gelöschten Items vorkam+
 DELETE FROM vault_order DELETE FROM vault_order
 WHERE id IN ( WHERE id IN (
-    SELECT id FROM ( +    SELECT order_id 
-        SELECT o.id +    FROM vault_order_items 
-        FROM vault_order o +    GROUP BY order_id 
-        LEFT JOIN vault_order_items i ON o.id = i.order_id +    HAVING SUM(CASE WHEN dir NOT LIKE 'I:%' THEN 1 ELSE 0 END= 0
-        WHERE i.order_id IS NULL +
-    ) AS sub+
 ); );
 +
 +-- 2. Lösche alle vault_order_items mit dir LIKE 'I:%'
 +DELETE FROM vault_order_items
 +WHERE dir LIKE 'I:%';
  
 COMMIT; COMMIT;
 
Nach oben
mysql.txt · Zuletzt geändert: von gerald
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0
DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp   Dogecoin Donations Accepted Here    DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp  DFmW2CEce3htPL1uNQuHUVu4Tk6WXigFQp