Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Herausforderung: Abfrageoptimierung | Abfrageoptimierung.Indizes
Fortgeschrittene Techniken in SQL
course content

Kursinhalt

Fortgeschrittene Techniken in SQL

Fortgeschrittene Techniken in SQL

1. Acid
2. Abfrageoptimierung.Indizes
3. Einige Zusätzliche Themen

book
Herausforderung: Abfrageoptimierung

Entdecken wir zwei Tabellen: BankAccounts und eine zusätzliche Tabelle namens Transactions.

BankAccounts Tabelle

Transaktionstabelle

Angenommen, wir möchten nur die Kontonummern abrufen, die mindestens eine Transaktion durchgeführt haben.

In dieser Aufgabe haben wir eine Abfrage, die nicht optimiert ist. Ihre Aufgabe ist es, sie auf eine optimalere Weise umzuschreiben.

Hier ist eine Liste der wichtigsten Techniken zur Umschreibung von Abfragen zur Verbesserung der Optimierung:

  1. Spalten explizit angeben: Anstatt das Sternchen (*) Wildcard zu verwenden, geben Sie die Spaltennamen in Abfragen explizit an, um die Leistung, Lesbarkeit und Wartbarkeit zu verbessern;

  2. Subabfragen minimieren: Reduzieren Sie die Verwendung von Subabfragen, um die Abfrageleistung zu optimieren. Ziehen Sie Alternativen wie Joins oder abgeleitete Tabellen in Betracht, um Komplexität und Overhead zu vermeiden;

  3. Vermeiden Sie wiederholte IN-Operatoren: Begrenzen Sie die Verwendung des IN-Operators in Abfragen, um Leistungseinbußen zu vermeiden. Ziehen Sie stattdessen die Verwendung von JOIN- oder EXISTS-Klauseln für effizientere Ausführungspläne in Betracht;

  4. Joins logisch organisieren: Beginnen Sie SQL-Joins mit der Haupttabelle und verbinden Sie dann mit verwandten Tabellen, um die Abfrageorganisation und die Optimierung der Datenbank-Engine zu optimieren;

  5. Einschränkende WHERE-Bedingungen verwenden: Verbessern Sie die Abfrageleistung, indem Sie einschränkende Bedingungen in die WHERE-Klausel aufnehmen, um Zeilen zu filtern und die Ausführungsgeschwindigkeit zu erhöhen;

  6. Code in gespeicherte Prozeduren oder Funktionen umstrukturieren: Kapseln Sie wiederkehrende Code-Segmente in gespeicherte Prozeduren oder benutzerdefinierte Funktionen ein, um Code-Wiederverwendbarkeit, Modularität und einfachere Wartung zu erreichen. Diese können Redundanz reduzieren und SQL-Abfragen optimieren.

Aufgabe

Swipe to start coding

Bitte schreiben Sie die Abfrage optimaler um. Achten Sie darauf, dass wir nur Kontonummern erhalten, die mindestens eine Transaktion durchgeführt haben (Geld auf ein anderes Konto überwiesen) sortiert in aufsteigender Reihenfolge.

Hinweis

Verwenden Sie den LEFT oder INNER Join-Typ, um diese Aufgabe zu erledigen.

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 2. Kapitel 7
toggle bottom row

book
Herausforderung: Abfrageoptimierung

Entdecken wir zwei Tabellen: BankAccounts und eine zusätzliche Tabelle namens Transactions.

BankAccounts Tabelle

Transaktionstabelle

Angenommen, wir möchten nur die Kontonummern abrufen, die mindestens eine Transaktion durchgeführt haben.

In dieser Aufgabe haben wir eine Abfrage, die nicht optimiert ist. Ihre Aufgabe ist es, sie auf eine optimalere Weise umzuschreiben.

Hier ist eine Liste der wichtigsten Techniken zur Umschreibung von Abfragen zur Verbesserung der Optimierung:

  1. Spalten explizit angeben: Anstatt das Sternchen (*) Wildcard zu verwenden, geben Sie die Spaltennamen in Abfragen explizit an, um die Leistung, Lesbarkeit und Wartbarkeit zu verbessern;

  2. Subabfragen minimieren: Reduzieren Sie die Verwendung von Subabfragen, um die Abfrageleistung zu optimieren. Ziehen Sie Alternativen wie Joins oder abgeleitete Tabellen in Betracht, um Komplexität und Overhead zu vermeiden;

  3. Vermeiden Sie wiederholte IN-Operatoren: Begrenzen Sie die Verwendung des IN-Operators in Abfragen, um Leistungseinbußen zu vermeiden. Ziehen Sie stattdessen die Verwendung von JOIN- oder EXISTS-Klauseln für effizientere Ausführungspläne in Betracht;

  4. Joins logisch organisieren: Beginnen Sie SQL-Joins mit der Haupttabelle und verbinden Sie dann mit verwandten Tabellen, um die Abfrageorganisation und die Optimierung der Datenbank-Engine zu optimieren;

  5. Einschränkende WHERE-Bedingungen verwenden: Verbessern Sie die Abfrageleistung, indem Sie einschränkende Bedingungen in die WHERE-Klausel aufnehmen, um Zeilen zu filtern und die Ausführungsgeschwindigkeit zu erhöhen;

  6. Code in gespeicherte Prozeduren oder Funktionen umstrukturieren: Kapseln Sie wiederkehrende Code-Segmente in gespeicherte Prozeduren oder benutzerdefinierte Funktionen ein, um Code-Wiederverwendbarkeit, Modularität und einfachere Wartung zu erreichen. Diese können Redundanz reduzieren und SQL-Abfragen optimieren.

Aufgabe

Swipe to start coding

Bitte schreiben Sie die Abfrage optimaler um. Achten Sie darauf, dass wir nur Kontonummern erhalten, die mindestens eine Transaktion durchgeführt haben (Geld auf ein anderes Konto überwiesen) sortiert in aufsteigender Reihenfolge.

Hinweis

Verwenden Sie den LEFT oder INNER Join-Typ, um diese Aufgabe zu erledigen.

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 2. Kapitel 7
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
We're sorry to hear that something went wrong. What happened?
some-alt