Middle
SQL'de pencere fonksiyonları kullanarak verileri nasıl gruplara ayırırsınız?
sobes.tech yapay zeka
AI'dan gelen yanıt
SQL'deki pencere fonksiyonları, GROUP BY kullanımı gibi sonucu tek bir satıra indirgemeden, satır grupları üzerinde hesaplamalar yapmaya olanak tanır. Her satır için tanımlanmış bir satır kümesi (pencere) üzerinde çalışırlar.
Verileri gruplara ayırmak ve pencere fonksiyonlarını uygulamak için OVER (PARTITION BY ...) yapısı kullanılır. Örneğin:
SELECT
employee_id,
department_id,
salary,
RANK() OVER (PARTITION BY department_id ORDER BY salary DESC) AS salary_rank
FROM employees;
Burada, veriler department_id'ye göre gruplandırılır ve her grup içinde maaş sıralaması hesaplanır.
Bu şekilde, pencere fonksiyonları verileri gruplar halinde analiz etmeye olanak tanır, aynı zamanda orijinal tablodaki tüm satırları korur.