Sobes.tech
Junior — Middle

Verilənlər bazası idarəetmə sistemlərində pəncərə funksiyalarının konsepsiyasını və tətbiqini izah edin.

sobes.tech Süni İntellekt

AI-dan cavab

Pəncərə funksiyaları (window functions) məlumat bazası idarəetmə sistemlərində (DBMS) cari sətirlə əlaqəli sətirlər toplusu üzərində hesablama aparmağa imkan verir, məlumatların qruplaşdırılmaması şərti ilə. Onlar toplama funksiyalarının imkanlarını genişləndirir, hər sətir üçün nəticələr təqdim edir, digər məlumatları isə saxlayır.

Əsas xüsusiyyətlər:

  • OVER() ilə müəyyən edilmiş pəncərə üzərində işləyir.
  • Sıralama (ORDER BY) və bölmə (PARTITION BY) təyin etmək mümkündür.
  • Hərəkətli cəm, reytinq, yığım toplamları və s. hesablamağa imkan verir.

SQL-də istifadə nümunəsi:

SELECT
  employee_id,
  department_id,
  salary,
  RANK() OVER (PARTITION BY department_id ORDER BY salary DESC) AS salary_rank
FROM employees;

Burada, hər bir işçi üçün, onun bölməsində maaş reytinqi hesablanır.

C#-da, pəncərə funksiyaları adətən LINQ vasitəsilə və ya pəncərə funksiyalarını dəstəkləyən verilənlər bazalarına SQL sorğuları ilə tətbiq olunur.