尝试计算 % MYSQL,单独的语句工作正常

Trying to work out % MYSQL, Seperate statements work ok

我有一个 mysql select 语句可以正常工作:

SELECT advisor AS advisor, team,        
SUM(time) -  SUM(CASE WHEN `queue` like '%Oth%' THEN time END) as case_time,
Count(distinct date) * 450 - SUM(CASE WHEN `queue` like '%Oth%' THEN time END) as time_av
FROM shift_report 
WHERE `team` = 1 and `date`>'20160701' group by `advisor` order by `advisor` ASC

我想用 case_time 除以 time_av 和 * 100 得到 'actual_time'

的百分比

我试过了,但没用:

round(SUM(time) -  SUM(CASE WHEN `queue` like '%Oth%' THEN time END) / 
Count(distinct date) * 450 - SUM(CASE WHEN `queue` like '%Oth%' THEN time END) * 100, 2)

有什么想法吗??

我想你漏掉了括号。已修改SQL请运行查看

    select  round( (SUM(time) - SUM(CASE WHEN queue like '%Oth%' THEN time END))/ 
(Count(distinct date) * 450 - SUM(CASE WHEN queue like '%Oth%' THEN time END) * 
100), 2) as result FROM shift_report WHERE team = 1 and date>'20160701'

这有效:

round( (SUM(time) - SUM(CASE WHEN queue like '%Oth%' THEN time END))/ (Count(distinct date) * 450 - SUM(CASE WHEN queue like '%Oth%'然后时间结束)) * 100, 2) 作为结果