0

さて、私は現在このクエリを行っていると言います:

SELECT `category_id`, `category_name` 
FROM `database_categorys` 
ORDER BY `category_name` ASC

ここで、項目テーブルのカテゴリ ID が現在の行のカテゴリ ID と等しい「database_items」というテーブルからすべての行をカウントしたいと考えています。

私が推測しているある種の結合またはネストされたクエリですが、それを行うための正しい構文に頭を悩ませることはできません。

そのため、エコーアウトするときに次のことができます。

<category name> <total items in category number>
4

2 に答える 2

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`
于 2012-11-02T20:29:02.657 に答える
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
于 2012-11-02T20:30:10.057 に答える