首页 文章资讯内容详情

在单个MySQL查询中获取两个表字段的计数?

2026-06-05 1 花语

为此,您可以将CASE语句与SUM()一起使用。在这里,我们将从具有员工性别值的列中查找“男性”和“女性”记录的数量。让我们首先创建一个表-

create table DemoTable ( EmployeeGender ENUM(Male,Female) );

使用插入命令在表中插入一些记录-

insert into DemoTable values(Male); insert into DemoTable values(Female); insert into DemoTable values(Male); insert into DemoTable values(Female); insert into DemoTable values(Male); insert into DemoTable values(Female);

使用select语句显示表中的所有记录-

select *from DemoTable;

这将产生以下输出-

+----------------+ | EmployeeGender | +----------------+ | Male | | Female | | Male | | Female | | Male | | Female | +----------------+ 6 rows in set (0.00 sec)

以下是在一个查询中获取两个表字段的计数的查询-

select sum(case when EmployeeGender=Male then 1 else 0 end) as Total_Number_Of_Male_Employee, sum(case when EmployeeGender=Female then 1 else 0 end) as Total_Number_Of_Female_Employee from DemoTable;

这将产生以下输出-

+-------------------------------+---------------------------------+ | Total_Number_Of_Male_Employee | Total_Number_Of_Female_Employee | +-------------------------------+---------------------------------+ | 3 | 3 | +-------------------------------+---------------------------------+ 1 row in set (0.00 sec