Sql 为特定ID的男性和女性计数
我有一个动物数据库,里面有它们的性别和它们被关在的笼子。 我想数一数每个笼子里雌性和雄性的数量 e、 g 我想要一列有笼子的数字不,笼子里的雌性数量,笼子里的雄性数量 例如Sql 为特定ID的男性和女性计数,sql,Sql,我有一个动物数据库,里面有它们的性别和它们被关在的笼子。 我想数一数每个笼子里雌性和雄性的数量 e、 g 我想要一列有笼子的数字不,笼子里的雌性数量,笼子里的雄性数量 例如 您可以使用条件聚合: SELECT cageno, SUM(CASE WHEN sex = 'F' THEN 1 ELSE 0 END) AS Female, SUM(CASE WHEN sex = 'M' THEN 1 ELSE 0 END) AS Male FROM animal GROUP
您可以使用条件聚合:
SELECT cageno,
SUM(CASE WHEN sex = 'F' THEN 1 ELSE 0 END) AS Female,
SUM(CASE WHEN sex = 'M' THEN 1 ELSE 0 END) AS Male
FROM animal
GROUP BY cageno;
字符串和日期常量只能使用单引号。您不需要转义这些名称。如果需要,请为数据库使用适当的转义字符(双引号、反勾号或方括号)。我删除了不一致的数据库标记。请仅使用您真正使用的数据库进行标记。
SELECT cageno, COUNT(sex) AS 'Female'
FROM animal
WHERE sex='F'
GROUP BY cageno
CageNo Female Male
01 1 1
03 1 0
SELECT cageno,
SUM(CASE WHEN sex = 'F' THEN 1 ELSE 0 END) AS Female,
SUM(CASE WHEN sex = 'M' THEN 1 ELSE 0 END) AS Male
FROM animal
GROUP BY cageno;