advanced
De ep-Dive SQL-Abfrageoptimierung
Analyse und Verbesserung einer ineffizienten, komplexen SQL-Abfrage mit vielen Joins.
📝 प्रॉम्ट सामग्री
Gegeben ist eine hypothetische Datenbankschema mit de n Tabellen 'Kunden' (10 Mio. Zeilen), 'Bestellungen' (50 Mio. Zeilen), 'Bestellpositionen' (150 Mio. Zeilen) un d 'Produkte' (100k Zeilen). Die folgende Abfrage ist la ngsam: 'SELECT k. name, SUM(bp. menge * p. preis) FROM kunden k JOIN bestellungen b ON k. id = b. kunden_id JOIN bestellpositionen bp ON b. id = bp. bestell_id JOIN produkte p ON bp. produkt_id = p. id WHERE b. datum > '2023-01-01' GROUP BY k. name HAVING SUM(...) > 1000'. Analysieren Sie de n potenziellen Au sführungsplan un d schlagen Sie konkrete Indizes, Par titionierungsstrategien oder Umschreibungen (z. B. CTEs, Subqueries) vor, um die Abfragezeit drastisch zu reduzieren. Begründen Sie jeden Schritt.