难以使用"计数"用于mysql查询

时间:2017-02-27 05:43:09

标签: mysql sql

我从mysql开始,我遇到了这个问题

问题是我想在一个特定的桌子的相关trablas之间进行查询,其中我有人的性别,无论是女人还是男人。

这是我的查询代码

SELECT c.Nom_carre as Preparatory, count(a.Gen_alum) as Gender
FROM alumno a, carrera c WHERE a.idCarrera=c.idCarrera 

此代码 count(a.Gen_alum)向我显示了男性或女性的总人数。 我想分开了解,有多少男性和多少女性?

3 个答案:

答案 0 :(得分:0)

尝试以下代码。

SELECT c.Nom_carre AS Preparatory,
       count(a.Gen_alum) AS Gender
FROM alumno a,
     carrera c
WHERE a.idCarrera=c.idCarrera
GROUP BY a.Gen_alum

它可以帮助你。

答案 1 :(得分:0)

在这里,您需要将count与group by

一起使用
SELECT c.Nom_carre as Preparatory, count(a.Gen_alum) as Gender
FROM alumno a
JOIN carrera c ON a.idCarrera = c.idCarrera
GROUP BY a.Gen_alum

答案 2 :(得分:0)

您应该使用join

SELECT c.Nom_carre as Preparatory, count(a.Gen_alum) as Gender
FROM alumno a
join carrera c on a.idCarrera=c.idCarrera
group by a.Gen_alum;

<强>更新

使用Field()将垂直数据显示为您的要求

SELECT c.Nom_carre as Preparatory, sum(field(a.Gen_alum,'male')) as Male,sum(field(a.Gen_alum,'Female')) as Female
FROM alumno a
join carrera c on a.idCarrera=c.idCarrera
group by a.idCarrera;

此处为“男性”和“女性”,请从列

更改此计数