【发布时间】:2016-10-26 09:44:44
【问题描述】:
我试图弄清楚如何计算所有总裁、经理等,然后在一个查询中将列转换为行。 例如,这里有一些示例 db 'employee':http://www.mysqltutorial.org/tryit/ 我可以使用这样的查询来计算所有类型的员工:
SELECT
SUM(CASE
WHEN jobTitle = 'President' THEN 1
ELSE 0
END) AS 'Presidents',
SUM(CASE
WHEN jobTitle LIKE 'VP%' THEN 1
ELSE 0
END) AS 'VPs',
SUM(CASE
WHEN jobTitle LIKE '%Manager%' THEN 1
ELSE 0
END) AS 'Managers',
SUM(CASE
WHEN jobTitle LIKE '%Rep' THEN 1
ELSE 0
END) AS 'Reps'
FROM
employees;
但现在我想将列转换为行,但我不知道如何将其包含在类似于此处答案的查询中: Mysql Convert Column to row (Pivot table )
【问题讨论】:
-
你有方法如何完成预期的输出。你在实施它时到底在哪里卡住了?此外,您应该更加小心地提出问题,因为您所问的问题可以通过简单的“是”或“否”来回答。
-
此外,当您可以通过简单的 group by 和 count 获得基于行的输出时,我不明白您为什么要取消透视上述查询的结果。