首页 > 解决方案 > 如何获取一组名称并将它们编译成一组具有不同出现的名称?

问题描述

我正在学习 SQL。我想试试看能不能查询数据库

SELECT AnimalName 
FROM animals INNER JOIN 
     animal_components 
     ON animal_components.AnimalID = animals.AnimalID

哪个返回我:

Dog
Dog
Dog
Dog
Cow
Cow
Cow
Bird
Bird

现在我有了这个输出,我想创建一个表,其名称与它发生的频率一起。但是,我已经坚持了一段时间,似乎没有清楚地解决这个问题。

狗 | 4

牛 | 3

鸟 | 2

提前感谢任何人提供的任何知识。

标签: sqlmariadb

解决方案


你想要聚合:

SELECT AnimalName, COUNT(*)
FROM animals INNER JOIN 
     animal_components 
     ON animal_components.AnimalID = animals.AnimalID
GROUP BY AnimalName;

推荐阅读