Sobes.tech
Middle

Чӣ гуна бояд дархости SQL барои ҳисоб кардани шумораи кормандон дар категорияҳои маош бо нишон додани 0 барои категорияҳои холӣ сохт?

sobes.tech AI

Ҷавоб аз AI

Барои ҳисоб кардани шумораи кормандон дар ҳар як категорияи маош ва нишон додани 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 хоҳад буд.

Ин усул имкон медиҳад, ки рӯйхати пурраи категорияҳо бо ҳисоботи дурусти кормандон ба даст ояд.