Mysql

MySQL - 通過汽車製造獲取汽車模型的計數

  • January 3, 2022

我有一張包含汽車數據的表格,即品牌、型號和年份。

汽車數據及其型號和年份

我想獲得每輛汽車的數量以及它有多少型號……如下圖所示:

使用型號計數

這是我正在使用的 SQL 查詢,但它給了我錯誤的計數。事實上,每輛車的行數實際上給了我想要的結果。

SELECT `make`, COUNT(`id`) as `countmake`
FROM `cars_new`
WHERE 1
AND `make` IN ('Chrysler', 'Ferrari', 'Citroen', 'Dodge')
GROUP BY `model`

幫我解決這個問題!

您必須對品牌和型號進行 GROUP BY 才能獲得計數

SELECT `make`,`model`, COUNT(*) as `countmakemodel`
FROM `cars_new`
WHERE `make` IN ('Chrysler', 'Ferrari', 'Citroen', 'Dodge')
GROUP BY `make`,`model`

所以,我找到了解決我的問題的方法。我不確定這是否有效,但它對我有用。

SELECT `temp_table`.`make`, COUNT(temp_table.make) FROM (SELECT `make`, `model`, COUNT(`id`) as `tnncmake`
FROM `cars_new`
WHERE 1
AND `make` IN ('Chrysler', 'Ferrari', 'Citroen', 'Dodge')
GROUP BY `make`, `model`) `temp_table` where 1 GROUP BY `temp_table`.make

這給了我所需的結果。

車型分類

我希望它也對其他人有所幫助。

引用自:https://dba.stackexchange.com/questions/279370