【发布时间】:2013-01-11 14:04:17
【问题描述】:
我有一个表,其中包含学生的姓名、电子邮件、职位等,以及他们的“状态”(可以是 Y 或 N 之一。)我想编写一个查询来计算每个学生的数量位置的类型,以及使用 JOIN 的每种类型内的 Y 数和 N 数。 (也就是说,它将是一个包含三列的表:Position、StatusIsYes 和 StatusIsNo。)
我已经通过以下方式使用 CASE 子句完成了此操作,但我无法弄清楚如何使用 JOIN 子句来完成此操作。
SELECT position,
COUNT(CASE WHEN status = 'Y' THEN 1 ELSE NULL END) AS StatusIsYes,
COUNT(CASE WHEN status = 'N' THEN 1 ELSE NULL END) AS StatusIsNo
FROM
students GROUP BY crd
感谢任何建议!
编辑:我知道 可以使用 JOIN 来完成,但我想知道如何使用 JOIN 来完成。
【问题讨论】: