Mysql 统计表中的项目,涉及的表字段枚举类型
我有一个名为Mysql 统计表中的项目,涉及的表字段枚举类型,mysql,sql,select,count,group-by,Mysql,Sql,Select,Count,Group By,我有一个名为animals的基本表,其中包含两个字段name和type。字段type是一个枚举字段,具有以下值:enum('dog'、'cat'、'horse'、'zebra'、'lion')。我试图运行一个查询,计算每个物种的数量,并指定该物种的名称。例如,预期结果将显示如下内容dog=2、cat=2等。。在下面的查询中,我能够计算出动物的总数,但不能细分为物种数量和名称。我怎么能这样做 查询: select COUNT(type) from animals 表架构: CREATE TABL
animals
的基本表,其中包含两个字段name
和type
。字段type
是一个枚举字段,具有以下值:enum('dog'、'cat'、'horse'、'zebra'、'lion')
。我试图运行一个查询,计算每个物种的数量,并指定该物种的名称。例如,预期结果将显示如下内容dog=2、cat=2等。
。在下面的查询中,我能够计算出动物的总数
,但不能细分为物种数量和名称。我怎么能这样做
查询:
select COUNT(type) from animals
表架构:
CREATE TABLE animals
(
name varchar(20),
type enum('dog','cat','horse','zebra','lion')
);
INSERT INTO animals
(name, type)
VALUES
('Bertha', 'horse'),
('Louis', 'cat'),
('Gina', 'cat'),
('Rafa', 'lion'),
('lilo', 'dog'),
('kilo', 'dog'),
('stripy', 'zebra');
使用
分组依据
和计数
按类型对动物进行计数
试试这个:
SELECT a.type, COUNT(1) AS Cnt
FROM animals a
GROUP BY a.type;
检查这个
输出
| TYPE | CNT |
|-------|-----|
| dog | 2 |
| cat | 2 |
| horse | 1 |
| zebra | 1 |
| lion | 1 |
你是说
select type, COUNT(*) from animals
group by type
您可以使用“按类型分组”来获取每种动物类型的计数。下面是对相同的问题的查询 从动物中选择
类型
,计数(*)
分组依据类型
类型计数(*)
狗2 第2类 马1 斑马1 狮子1