Data Engineering

Fortgeschrittenes SQL für Data Engineering

Window Functions, rekursive CTEs, analytische Abfragen, Optimierung, EXPLAIN ANALYZE, Indexierung, Partitionierung

20 Interview-Fragen·
Mid-Level
1

Welche Window Function weist jeder Zeile innerhalb einer Partition eine eindeutige fortlaufende Nummer zu?

Antwort

ROW_NUMBER() weist jeder Zeile innerhalb einer Partition eine eindeutige fortlaufende Nummer ab 1 zu. Im Gegensatz zu RANK() und DENSE_RANK(), die gleichen Werten dieselbe Nummer zuweisen können, garantiert ROW_NUMBER() immer eindeutige Nummern, selbst bei identischen Werten in der ORDER BY-Klausel.

2

Was ist der Hauptunterschied zwischen RANK() und DENSE_RANK()?

Antwort

RANK() lässt Lücken in der Nummerierung nach gleichrangigen Werten. Wenn beispielsweise zwei Zeilen mit 1 bewertet sind, erhält die nächste den Rang 3. DENSE_RANK() lässt keine Lücken: Nach zwei Zeilen mit Rang 1 erhält die nächste Rang 2. Diese Unterscheidung ist wichtig für Ranking-Analysen, bei denen Lücken die Statistiken verfälschen können.

3

Wie berechnet man eine kumulative Summe (Running Total) mit einer Window Function?

Antwort

SUM() OVER mit ORDER BY ohne expliziten Frame verwendet standardmäßig ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW, was die Summe aller vorangehenden Zeilen bis einschließlich der aktuellen Zeile berechnet. Dies ist das Standardverhalten zum Erstellen kumulativer Summen in Zeitreihen- oder sequentiellen Analysen.

4

Welche Rolle spielt die PARTITION BY-Klausel in einer Window Function?

5

Welche Funktion ermöglicht den Zugriff auf den Wert der vorherigen Zeile in einer Window Function?

+17 Interview-Fragen

Meistere Data Engineering für dein nächstes Interview

Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.

Kostenlos starten