Sobes.tech
Middle

Bo'sh kategoriyalar uchun 0 bilan maosh kategoriyalarida xodimlar sonini hisoblash uchun SQL so'rovi qanday qilish mumkin?

sobes.tech AI

AIdan javob

Maosh haqi bo'yicha har bir toifadagi xodimlar sonini hisoblash va xodimlar bo'lmagan toifalar uchun 0 ni chiqarish uchun, LEFT JOIN ni maosh toifalari jadvali bilan ishlatish kerak.

Faraz qilaylik, ikki taxta mavjud:

  • salary_categories (id, toifa_nomi)
  • employees (id, ism, salary_category_id)

Misol so'rov:

SELECT sc.toifa_nomi, COUNT(e.id) AS xodimlar_soni
FROM salary_categories sc
LEFT JOIN employees e ON e.salary_category_id = sc.id
GROUP BY sc.toifa_nomi
ORDER BY sc.toifa_nomi;

Tushuntirish:

  • LEFT JOIN barcha salary_categories toifalarining natijada bo'lishini ta'minlaydi, hatto ularda xodimlar bo'lmasa ham.
  • COUNT(e.id) har bir toifadagi xodimlar sonini hisoblaydi; bo'sh toifalar uchun 0 bo'ladi.

Bu yondashuv to'liq toifalar ro'yxatini va to'g'ri xodimlar sonini olish imkonini beradi.