Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Challenge: Query Optimization | Section
SQL-Optimierung und Abfragefunktionen
Abschnitt 1. Kapitel 14
single

single

bookChallenge: Query Optimization

Swipe um das Menü anzuzeigen

In this practical challenge, you will analyze and optimize a join query using the products and sales tables. Query optimization is essential for efficient database performance, especially as data volumes grow. A slow query can often be improved by understanding how the database executes it, applying the right indexes, and rewriting the query for better execution plans.

Start by examining the following join query that retrieves the total quantity sold for each product in the "Electronics" category:

SELECT p.name, SUM(s.quantity) AS total_sold
FROM products p
JOIN sales s ON p.product_id = s.product_id
WHERE p.category = 'Electronics'
GROUP BY p.name;

This query may not perform optimally as the dataset grows, especially if the join or filtering step is inefficient. Your goal is to analyze the query using EXPLAIN, identify possible bottlenecks, and apply optimization strategies. Consider the following steps:

  • Use EXPLAIN to review the current query execution plan and look for any sequential scans or inefficient joins;
  • Determine which columns would benefit from indexing based on the join and filter conditions;
  • Create appropriate indexes to speed up the join and filtering;
  • Rewrite the query if necessary to further optimize performance, such as by filtering rows earlier or adjusting the join order.

By applying these techniques, you will gain hands-on experience with real-world SQL optimization tasks that can dramatically improve query speed and resource usage.

Aufgabe

Swipe to start coding

You are given a join query that retrieves the total quantity sold for each product in the "Electronics" category. Analyze and optimize this query for better performance.

  • Use EXPLAIN to analyze the execution plan of the provided join query.
  • Identify and create any indexes that would improve the performance of the join and filtering steps.
  • Optionally, rewrite the query to further optimize execution, such as by filtering before joining.
  • Demonstrate the effect of your optimizations by running EXPLAIN on your optimized query.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 14
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

some-alt