Middle
Boş kategoriler için 0 göstererek maaş kategorilerinde çalışan sayısını saymak için SQL sorgusu nasıl yapılır?
sobes.tech yapay zeka
AI'dan gelen yanıt
Her maaş kategorisine göre çalışan sayısını saymak ve çalışan olmayan kategoriler için 0 göstermek için, maaş kategorileri tablosu ile LEFT JOIN kullanmalısınız.
İki tablo olduğunu varsayalım:
salary_categories(id, kategori_adı)employees(id, isim, salary_category_id)
Örnek sorgu:
SELECT sc.kategori_adı, COUNT(e.id) AS calisan_sayısı
FROM salary_categories sc
LEFT JOIN employees e ON e.salary_category_id = sc.id
GROUP BY sc.kategori_adı
ORDER BY sc.kategori_adı;
Açıklama:
LEFT JOINtümsalary_categorieskategorilerinin sonuçta olmasını sağlar, hatta içinde çalışan olmayanlar bile.COUNT(e.id)her kategorideki çalışan sayısını sayar; boş kategoriler için 0 döner.
Bu yaklaşım, tüm kategorilerin tam listesini ve doğru çalışan sayısını elde etmenizi sağlar.