Top 25 SQL Interview Questions and Answers(The BEST SQL Interview Questions)

techTFQ
1 Dec 202126:20

Summary

TLDRIn diesem Video geht es um 25 wichtige SQL-Fragen, die in Vorstellungsgesprächen häufig gestellt werden. Der Sprecher erläutert grundlegende SQL-Konzepte wie Indizes, Schlüssel, Funktionen, Prozeduren, Trigger und Materialized Views. Besondere Aufmerksamkeit wird der Optimierung von SQL-Abfragen gewidmet, mit Tipps zur Erstellung effizienter Abfragen, dem Einsatz der richtigen Indizes und der Verwendung von Execution Plans. Außerdem werden Unterschiede zwischen Views und Synonymen, sowie dem Merge-Befehl erklärt. Das Video bietet eine detaillierte Übersicht und wertvolle Einblicke für SQL-Interviews auf verschiedenen Erfahrungsstufen.

Takeaways

  • 😀 Achte darauf, SQL-Abfragen effizient zu schreiben, um die Leistung zu optimieren.
  • 😀 Stelle sicher, dass Indizes korrekt auf den verwendeten Tabellen erstellt werden, um die Abfragegeschwindigkeit zu erhöhen.
  • 😀 Aktualisiere regelmäßig die Statistiken deiner Tabellen, um die Leistung zu verbessern.
  • 😀 Nutze den EXPLAIN PLAN, um zu verstehen, wie die Abfrage ausgeführt wird und welche Indizes verwendet werden.
  • 😀 Unterscheide zwischen den verschiedenen Datenbankconstraints: Primary Key, Unique Key und Foreign Key.
  • 😀 Verstehe den Unterschied zwischen Views und Synonymen sowie ihre jeweiligen Anwendungsfälle.
  • 😀 Achte darauf, dass benutzerdefinierte Funktionen keine DML-Operationen enthalten, wenn sie in einer SELECT-Abfrage verwendet werden.
  • 😀 Trigger sind automatisch ausgeführte Aktionen, die auf bestimmte Ereignisse in der Datenbank reagieren.
  • 😀 Materialized Views speichern Ergebnisse physisch, im Gegensatz zu normalen Views, die bei jedem Abrufen neu berechnet werden.
  • 😀 Die MERGE-Anweisung kombiniert INSERT-, UPDATE- und DELETE-Operationen in einer einzigen Abfrage, basierend auf Bedingungen.
  • 😀 Verstehe den Unterschied zwischen Funktionen und Prozeduren – Funktionen geben einen Wert zurück, während Prozeduren Operationen durchführen, aber keinen Wert zurückgeben.

Q & A

  • Was ist der Zweck von Indexen in SQL und warum sind sie wichtig?

    -Indexe verbessern die Performance von SQL-Abfragen, indem sie den Datenbankzugriff auf bestimmte Tabellen oder Spalten beschleunigen. Sie ermöglichen es dem Datenbankmanagementsystem, schneller auf Daten zuzugreifen, ohne die gesamte Tabelle durchsuchen zu müssen.

  • Welche Schritte sind erforderlich, um eine SQL-Abfrage zu optimieren?

    -Die vier Schritte zur Optimierung einer SQL-Abfrage sind: 1) Die Abfrage auf bestmögliche Art schreiben. 2) Überprüfen, ob die richtigen Indexe für alle verwendeten Tabellen erstellt wurden. 3) Sicherstellen, dass Statistiken für die Tabellen aktuell sind. 4) Die Ausführungsplanung (Explain Plan) überprüfen, um zu verstehen, wie die Datenbank die Abfrage ausführt.

  • Was ist der Unterschied zwischen einem Primary Key, einem Unique Key und einem Foreign Key?

    -Ein Primary Key stellt sicher, dass jede Zeile in einer Tabelle eindeutig identifiziert wird. Ein Unique Key stellt ebenfalls sicher, dass alle Werte in einer Spalte einzigartig sind, jedoch kann eine Tabelle mehrere Unique Keys haben. Ein Foreign Key verweist auf einen Primary Key in einer anderen Tabelle und stellt so eine Beziehung zwischen den Tabellen her.

  • Was ist der Unterschied zwischen einer View und einem Synonym?

    -Eine View ist eine gespeicherte Abfrage, die wie eine Tabelle aussieht, aber dynamisch abgerufen wird. Ein Synonym ist ein Alias für ein Datenbankobjekt (wie eine Tabelle oder View), das es ermöglicht, auf dieses Objekt mit einem anderen Namen zuzugreifen, um die Lesbarkeit und Wartbarkeit zu verbessern.

  • Wann kann eine Funktion nicht in einer SELECT-Abfrage aufgerufen werden?

    -Benutzerdefinierte Funktionen können nicht in einer SELECT-Abfrage aufgerufen werden, wenn sie DML-Operationen wie INSERT, UPDATE oder DELETE durchführen, da solche Funktionen den Zustand der Datenbank ändern, was in einer SELECT-Anweisung nicht zulässig ist.

  • Was ist ein Trigger in SQL?

    -Ein Trigger ist eine spezielle Art von Stored Procedure, die automatisch ausgelöst wird, wenn bestimmte Ereignisse in einer Datenbank eintreten, wie INSERT, UPDATE oder DELETE. Ein Trigger wird vom Datenbankmanagementsystem ohne manuelles Eingreifen ausgeführt.

  • Was ist der Unterschied zwischen einer normalen View und einer Materialized View?

    -Eine normale View speichert keine Daten, sondern führt eine Abfrage jedes Mal aus, wenn sie aufgerufen wird. Eine Materialized View speichert die Abfrageergebnisse und aktualisiert sie periodisch oder manuell, was die Performance verbessert, da keine wiederholten Abfragen erforderlich sind.

  • Was ist eine MERGE-Anweisung in SQL?

    -Die MERGE-Anweisung ermöglicht es, sowohl Einfüge- als auch Aktualisierungsoperationen in einer einzigen Abfrage durchzuführen. Sie vergleicht die Daten in zwei Tabellen und führt je nach Bedingung entweder ein UPDATE oder ein INSERT durch.

  • Welche Funktionen können verwendet werden, um das Datum von gestern in SQL zu ermitteln?

    -Je nach RDBMS (z. B. Oracle, MySQL, SQL Server, PostgreSQL) gibt es unterschiedliche Funktionen, um das aktuelle Datum zu ermitteln und einen Tag davon abzuziehen, um das Datum von gestern zu erhalten. In der Regel wird dies durch die Verwendung von Funktionen wie `CURRENT_DATE` und `INTERVAL` oder `DATEADD` erreicht.

  • Was ist der Unterschied zwischen einer Funktion und einer Prozedur in SQL?

    -Der Hauptunterschied zwischen einer Funktion und einer Prozedur besteht darin, dass eine Funktion einen Wert zurückgibt, während eine Prozedur dies nicht tut. Funktionen werden in SQL-Abfragen verwendet, während Prozeduren eigenständig aufgerufen und ausgeführt werden.

  • Was ist der Zweck von PRAGMA AUTONOMOUS TRANSACTION?

    -PRAGMA AUTONOMOUS TRANSACTION ermöglicht es einer Prozedur, unabhängig von der aktuellen Transaktion in einer eigenen Sitzung zu arbeiten. Diese Funktion ist nützlich, wenn eine Prozedur bestimmte Operationen durchführen muss, die unabhängig vom Haupt-Transaktionskontext sind, z. B. Protokollierung oder Fehlerbehandlung.

Outlines

plate

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。

今すぐアップグレード

Mindmap

plate

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。

今すぐアップグレード

Keywords

plate

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。

今すぐアップグレード

Highlights

plate

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。

今すぐアップグレード

Transcripts

plate

このセクションは有料ユーザー限定です。 アクセスするには、アップグレードをお願いします。

今すぐアップグレード
Rate This

5.0 / 5 (0 votes)

関連タグ
SQL-InterviewLeistungsoptimierungSQL-EntwicklerAbfrage-TuningPrimärschlüsselDatenbank-IndizesTriggerMaterialized ViewsFunktionenProzedurenFortgeschrittene SQL
英語で要約が必要ですか?