我在mysql中有一个表,我想要这个输出:
HNSHAK MOBILE COMPUTING =13
HNSHAK STORAGE =2
每次执行时,产品组都会更改。
表:
Productgroup Created By
MOBILE COMPUTING HNSHAK
MOBILE COMPUTING HNSHAK
MOBILE COMPUTING HNSHAK
MOBILE COMPUTING HNSHAK
STORAGE HNSHAK
MOBILE COMPUTING HNSHAK
STORAGE HNSHAK
MOBILE COMPUTING HNSHAK
MOBILE COMPUTING HNSHAK
MOBILE COMPUTING HNSHAK
MOBILE COMPUTING HNSHAK
MOBILE COMPUTING HNSHAK
MOBILE COMPUTING HNSHAK
MOBILE COMPUTING HNSHAK
MOBILE COMPUTING HNSHAK
您的查询应该是这样的:
SELECT `Created By`, ProductGroup, COUNT(*) `Count`
FROM tablename
GROUP BY `Created By`, ProductGroup;
使用GROUP BY Created_By, ProductGroup
和聚合函数COUNT
。
这会给你:
Created By ProductGroup Count
HNSHAK MOBILE COMPUTING 13
HNSHAK STORAGE 2
SELECT `Created_By`, `Productgroup`, COUNT(`Productgroup`)
FROM `table_name`
GROUP BY `Productgroup`
你应该在这里使用GROUP BY
。你还应该记住,如果Created By
中的所有值都不相同(比如其中一个是COMPANY1
)那么你要么忽略Productgroup
并选择表中出现的Productgroup
的第一个值,要么你'每个_manufacturer都有多行Productgroup。要实现后者,你将以这种方式使用GROUP BY
GROUP BY `Created_By`, `Productgroup`