Sobes.tech
Junior — Middle

SQL sorğuları ilə işləyərkən pəncərə funksiyalarından istifadə təcrübəniz varmı?

sobes.tech Süni İntellekt

AI-dan cavab

Bəli, SQL sorğuları ilə işləyərkən mən pəncərə funksiyalarını (window functions) istifadə etmişəm. Onlar cari sətir ilə əlaqəli sətirlər toplusu üzərində hesablamalar aparmağa imkan verir, nəticələri qruplaşdırmadan, bu isə analiz və mürəkkəb sorğular üçün əlverişlidir.

Əsas pəncərə funksiyaları:

  • ROW_NUMBER() — sətirlərin nömrələnməsi
  • RANK(), DENSE_RANK() — bərabərlikləri nəzərə alaraq reytinq
  • SUM(), AVG(), COUNT() — pəncərə üzərində toplu funksiyalar

Nümunə: əməkdaşların siyahısını onların maaşları və şöbə üzrə azalan sırayla almaq:

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

Burada, PARTITION BY məlumatları şöbələrə bölür və ORDER BY hər şöbə daxilində sıralamayı müəyyən edir. Pəncərə funksiyaları mürəkkəb analitik sorğuları detallar itirmədən həyata keçirməyə imkan verir.