我试图让一个mysql查询返回一个计算结果,但是遇到一些挑战,因为我只能让它返回1值。
http://sqlfiddle.com/#!9/5e9276/1
是否可以获取部门内属于机器人类型的业务代表的总数,然后获取部门内的业务代表总数以计算%?
例:
1个部门中有5个机器人中有4个。 (80%的机器人)
type字段不一定总是具有相同的值,但是至少包含关键字“ robot”或“ human”。
我知道我可以通过编程方式获取%,但想检查是否有一种方法可以直接使用mysql查询来执行此操作。
任何帮助表示赞赏。
谢谢,
最佳答案
也许这就是您想要的:
SELECT
department,
SUM(type LIKE '%robot%') robots,
COUNT(department) total,
SUM(type LIKE '%robot%') / COUNT(department) robot_percentage
FROM agents
GROUP BY department;
Example SQL Fiddle
要使用百分号格式化
robot_percentage
,请执行以下操作:CONCAT(FORMAT( (SUM(type LIKE '%robot%')*100 / COUNT(department)),2),'%') robot_percentage
关于mysql - 如何使用mysql获取总数和子集总数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31763302/