我编写了一个查询,根据employee id e and profile从表emp中提取员工的性别和姓名,现在我有一个表,如下所示:
gender name
m qwqw
f wewe
m erer
m rtrt
f tyty所使用的查询是:
select gender, name from profile inner join e on profile.emp = e.emp现在,我必须编写一个子查询来创建一个表来统计来自特定性别的员工数量,例如:
gender count
m 3
f 2在我写的查询中:
SELECT COUNT(gender) AS 'Count' FROM (select gender, name from profile inner join e on profile.emp = e.emp)AS Gender GROUP BY Gender;我能打印:
count
3
2但不是性别专栏。如何使用联接和子查询来根据需要正确显示数据?
发布于 2021-02-17 11:31:30
试试这段给出的below=>代码
SELECT Gender, COUNT(gender) AS 'Count' FROM (select gender, name from profile inner join e on profile.emp = e.emp)AS Gender GROUP BY Gender;发布于 2021-02-17 11:41:02
您需要在gender中包括select。您可以按未选择的列和表达式进行聚合--尽管这有点不寻常。
在您的情况下,您不需要子查询。此外,我强烈建议使用表格别名:
select gender, count(*)
from profile p inner join
e
on p.emp = e.emp
group by gender;发布于 2021-02-17 11:35:16
你试过选择gender, COUNT(gender)吗?您的查询将成为
SELECT gender, COUNT(gender) AS 'Count' FROM (select gender, name from profile inner join e on profile.emp = e.emp)AS Gender GROUP BY Gender;https://stackoverflow.com/questions/66241082
复制相似问题