复杂的mysql查询问题

fre*_*red 7 mysql

我想在我的仪表板中显示前5个产品,在每个产品上我想显示订单总数,视图以及该产品基于其他产品的位置百分比:

Game 1 for Xbox (200 orders / 1000 views) 20%
Game 2 for WII (180 orders / 2100 views) 18%
Game 3 for PS3 (170 orders / 390 views) 17%
Game 4 for PS3 (90 orders / 1400 views) 9%
Game 5 for WII (20 orders / 30 views) 2%
Run Code Online (Sandbox Code Playgroud)

所以1000个订单中的1000个订单中的200个订单是总订单的20%.这意味着,我的产品中有20%是游戏1

这是我的查询:

select
 products.name, products.type, products.views, count(*) as orders, ????????
from
 products
inner join orders on (products.id = orders.product_id)
group by orders.product_id
Run Code Online (Sandbox Code Playgroud)

我怎么得到这个百分比?

nec*_*cer 6

select
 products.name, products.type, count(*) as orders, count(*) * 100 / total.total as pct
from
 products
inner join orders on (products.id = orders.product_id)
inner join (select count(*) as total from orders) total
group by orders.product_id
Run Code Online (Sandbox Code Playgroud)