Sobes.tech
Middle

Kako napraviti SQL upit za brojanje zaposlenih u kategorijama plata sa prikazom 0 za prazne kategorije?

sobes.tech АИ

Одговор од АИ

Да бисте пребројали број запослених у свакој категорији плате и приказали 0 за категорије у којима нема запослених, треба да користите LEFT JOIN са табелом категорија плата.

Претпоставимо да постоје две табеле:

  • salary_categories (id, назив_категорије)
  • employees (id, име, salary_category_id)

Пример упита:

SELECT sc.назив_категорије, COUNT(e.id) AS број_запослених
FROM salary_categories sc
LEFT JOIN employees e ON e.salary_category_id = sc.id
GROUP BY sc.назив_категорије
ORDER BY sc.назив_категорије;

Објашњење:

  • LEFT JOIN гарантује да ће све категорије из salary_categories бити у резултату, чак и ако у њима нема запослених.
  • COUNT(e.id) броји број запослених у свакој категорији; за празне категорије резултат ће бити 0.

Овај приступ омогућава добијање потпуног списка категорија са тачним бројем запослених.