Junior — Middle
Haben Sie Erfahrung im Umgang mit Fensterfunktionen bei der Arbeit mit SQL-Abfragen?
sobes.tech KI
Antwort von AI
Ja, bei der Arbeit mit SQL-Abfragen habe ich Fensterfunktionen (window functions) verwendet. Sie ermöglichen es, Berechnungen über eine Menge von Zeilen durchzuführen, die mit der aktuellen Zeile verbunden sind, ohne das Ergebnis zu gruppieren, was für Analysen und komplexe Abfragen praktisch ist.
Hauptfensterfunktionen:
ROW_NUMBER()— Zeilennummerierung im FensterRANK(),DENSE_RANK()— Rangfolge unter Berücksichtigung von GleichständenSUM(),AVG(),COUNT()— Aggregatfunktionen über das Fenster
Beispiel: Liste der Mitarbeiter mit ihrem Gehalt und ihrer Rangfolge nach Abteilung in absteigender Gehaltsordnung:
SELECT
employee_id,
department_id,
salary,
ROW_NUMBER() OVER (PARTITION BY department_id ORDER BY salary DESC) AS salary_rank
FROM employees;
Hier teilt PARTITION BY die Daten nach Abteilungen, und ORDER BY legt die Reihenfolge innerhalb jeder Abteilung fest. Fensterfunktionen ermöglichen komplexe analytische Abfragen, ohne Details zu verlieren.