2017-09-24 74 views
0

因此,我需要一个SQL查询来计算订单金额小于600欧元的销售人员(销售人员)的百分比。SQL满足条件的销售人员的百分比

我已经提出了一个sql查询,给了我这些数字,我可以看到有5个推销员谁有这个。 (所以百分之八十)。现在我需要将该查询翻译为仅显示该百分比的查询,但我无法弄清楚。有人可以帮我解决这个问题吗?

,显示5个推销员与未结订单总量查询:

SELECT mw.mdwnr, SUM(br.aantal*ap.prijs) 
FROM bestelling bs 
JOIN bestelregel br 
ON bs.bestelnr = br.bestelnr 
JOIN artikelprijs ap 
ON ap.artikelnr = br.artikelnr 
JOIN medewerker mw 
ON bs.verkoper = mw.mdwnr 
WHERE bs.besteldatum between begindatum and einddatum 
AND bs.betaaldatum is null 
GROUP BY mw.mdwnr 

enter image description here

回答

1

如果我理解正确的话,你可以用你的查询作为子查询,并做到:

select avg(case when col2 < 600 then 1.0 else 0 end) as ratio_orders_under_600 
from (<your query here>) q; 
+0

感谢它的工作!我已经认为我需要使用子查询,但我无法实现它。我只需要将FORMAT中的比例更改为百分比,但这并不困难。 –

+0

@TimHellegers。 。 。你可以通过使用'100.0'而不是'1.0'来得到一个从0到100的值。 –