gpt4 book ai didi

Mysql交叉表查询百分比计数?

转载 作者:行者123 更新时间:2023-11-29 14:19:39 25 4
gpt4 key购买 nike

早上好,是否可以通过交叉表查询计算 2 个计算列的百分比,我的缩减查询如下?

Select
a.ContactFullName As Adviser,
Sum(Month(b.CaseDate) = 1) As Jan,
Sum(Month(b.CaseDate) = 2) As Feb,
Sum(Month(b.CaseDate) = 3) As Mar,
Count(b.CaseID) As Total,
Count(b.StatusSubmittedDate) As Comms

From
tblcontacts a Inner Join
tblcases b On a.ContactID = b.ContactAssignedTo
Group By
a.ContactFullName With Rollup

这会将月份输出为显示每月案例的列,“总计”列对行进行计数,而“通讯”列仅对带有日期的案例进行计数。我想做的是计算 Total/Comms 的百分比;

Total | Comms | %_Share
100 | 50 | 50%
346 | 53 | 15%
278 | 89 | 32%

我是否看错了方式,我应该创建多个查询来实现吗?

感谢您的浏览

最佳答案

只需选择另一列:

Select …,
100*Count(b.StatusSubmittedDate)/Count(b.CaseID) As `%_Share`
From …

这是 100*Comms/Total,这是您预期输出指示的方式,而不是您在文本中编写的 Total/Comms。

据我所知,直接重用一个计算列来计算另一计算列中的值是不可能的。但是重复计算 Count 的开销应该不会太严重,也许 MySQL 甚至会检测到这些常见术语并只计算一次,我不知道。

关于Mysql交叉表查询百分比计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11966870/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com