从 table 中查找类别数

Find the count of categories from a table

我正在尝试为一个研究所开发一个查询管理系统。 我在 mysql db.

中有 3 个 table
  1. leads_course_category table 保留课程类别并包含以下列:category_idcategory_namecategory_created_timecategory_deleted.

  2. leads_course_details table 将课程存储在类别下并具有以下列:course_idcourse_category_idcourse_name.

  3. leads_enquiry_details table 存储查询详细信息并具有以下列:enquiry_idenquiry_nameleads_course_details_course_idenquiry_deleted

我需要找到每个类别的查询数量。 我尝试了以下查询:

SELECT category_name,COUNT(*) as COUNT
FROM leads_course_category
RIGHT JOIN   leads_course_details 
on category_id=leads_course_details.course_category_id  
RIGHT JOIN `leads_enquiry_details`   
on leads_course_details.course_id= leads_enquiry_details.leads_course_details_course_id  
WHERE leads_enquiry_details.enquiry_deleted=1 
GROUP BY leads_course_category.category_id

此查询会跳过所有具有空值的类别,但我需要将其显示为零。

请帮我解决这个问题。

条件 enquiry_deleted = 1 必须移至 ON 子句:

select c.category_name, count(ed.enquiry_id) count 
from leads_course_category c 
left join leads_course_details cd on c.category_id = cd.course_category_id  
left join leads_enquiry_details ed on cd.course_id = ed.leads_course_details_course_id and ed.enquiry_deleted = 1 
group by c.category_id, c.category_name