好的人说我正在做这个查询:
SELECT `category_id`, `category_name`
FROM `database_categorys`
ORDER BY `category_name` ASC
现在我想要计算名为“database_items”的表中的所有行,其中item表的类别id等于当前行类别id。
我猜测某种连接或嵌套查询,但我不能用正确的语法来解决这个问题。
因此,在回应它时,我可以这样做:
<category name> <total items in category number>
答案 0 :(得分:6)
SELECT c.`category_id`, c.`category_name`, count(i.`category_id`)
FROM `database_categorys` c
LEFT OUTER JOIN `database_items` i on c.`category_id` = i.`category_id`
GROUP BY c.`category_id`, c.`category_name`
ORDER BY c.`category_name`
答案 1 :(得分:0)
我会使用这样的子查询:
SELECT
`category_id`, `category_name`,
(SELECT count(1) from database_items i where i.category_id = c.category_id)
FROM `database_categorys` c
ORDER BY `category_name` ASC