SQL查询以获取空类别
在我的分类表中,我有:cat_id、cat_name、cat_slug。 在表中,我有:item\u title、item\u id、item\u category 我使用以下SQL来获取所有类别以及它们有多少项:SQL查询以获取空类别,sql,join,group-by,Sql,Join,Group By,在我的分类表中,我有:cat_id、cat_name、cat_slug。 在表中,我有:item\u title、item\u id、item\u category 我使用以下SQL来获取所有类别以及它们有多少项: SELECT *, COUNT(`item_id`) FROM `menu_categories` JOIN `menu_items` ON `item_category` = `cat_id` GROUP BY `item_category` 但它不会显示空类别,即
SELECT *, COUNT(`item_id`)
FROM `menu_categories`
JOIN `menu_items` ON `item_category` = `cat_id`
GROUP BY `item_category`
但它不会显示空类别,即没有项目的类别。您需要使用左连接而不是连接
看一看使用左连接
SELECT *, COUNT(`item_id`)
FROM `menu_categories`
LEFT JOIN `menu_items`
ON `item_category` = `cat_id`
GROUP BY `item_category`
用左join替换join非常感谢,还必须将GROUP BY更改为cat_id=
SELECT *, COUNT(`item_id`)
FROM `menu_categories`
LEFT JOIN `menu_items` ON `item_category` = `cat_id`
GROUP BY `item_category`
SELECT *, COUNT(`item_id`)
FROM `menu_categories`
LEFT JOIN `menu_items`
ON `item_category` = `cat_id`
GROUP BY `item_category`