mysql - 使用子查询(MySQL)时分组的替代方案?

标签 mysql charts grouping

我正在尝试创建一个相对复杂的 MySQL 查询来生成堆积条形图 - 按月、按部门的请求计数。

我一直尝试使用的方法是通过子查询——但这似乎是一个死胡同,因为按月分组不适用于子查询。它对返回的每一行重复相同的总计数,例如

MONTH     HR    ACCT  CUST SVC
October   5     1     5
November  5     1     5
December  5     1     5

这是我正在使用的查询:

SELECT 
MONTH(request.submissiondate), YEAR(request.submissiondate),
(SELECT count(*) from request where request.DEPARTMENTID='1') as 'Human Resources',
(SELECT count(*) from request where request.DEPARTMENTID='2') as 'Accounting',
(SELECT count(*) from request where request.DEPARTMENTID='3') as 'Customer Service'

FROM request 
WHERE YEAR(request.submissiondate) = 2011
group by MONTH(request.submissiondate), YEAR(request.submissiondate)

希望有一种我所缺少的相对简单的替代方法。

预先感谢您的帮助!

最佳答案

也许这样的东西会起作用?

SELECT 
MONTH(request.submissiondate), YEAR(request.submissiondate), request.DEPARTMENTID, COUNT(*) as 'total'
FROM request 
WHERE YEAR(request.submissiondate) = 2011
group by MONTH(request.submissiondate), YEAR(request.submissiondate), request.DEPARTMENTID
ORDER BY request.submissiondate 

我不知道是否可以准确地获得上面列出的输出,但是您应该能够循环返回的行并使用您使用的任何服务器端语言重新排列输出。

关于mysql - 使用子查询(MySQL)时分组的替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8031582/

相关文章:

mysql - 具有最大日期的 IN 子句的 LINQ 表达式

charts - 如何将水平断点应用于 d3.js 条形图

java - 如何过滤 TreeMap<MyKey, Map<Key2,List<Kids>>> ,

r - R 中的分面或分组相关和相关图

mysql - 如何使用 JPA 注释将 DateTime(3) 表示为数据库中 MySQL 列中的数据类型

mysql - “CONFIGURATION” 网站面板上没有显示菜单

php - 使用ajax登录不工作

javascript - Flot 无法在某些浏览器上呈现图表

excel - Excel 图表中的刻度轴

java - 在 Java 中使用正则表达式进行分组