1
我想显示百分比评级产品评论表按订单号排序。添加行到最终选择,如果为空查询sql
例如:
:71%
:0%
:0%
:28%
:0%
可以是任何数量的速度不会在产品的评价表中存在(在上面的例子中速率4,3,1在我的表不存在)
DATAS在示例上方插入在我的表。是:
Id CustomerId ProductId Rating
------- --------------- -------------- --------
39 14 57 2
42 18 57 5
56 19 57 5
我作秀%的查询是:
SELECT
pr.ProductId ,
pr.Rating,
percentage = AVG(pr.Rating) * 100/SUM(AVG(pr.Rating)) OVER (PARTITION BY pr.ProductId)
FROM ProductReview pr
WHERE pr.ProductId = 57
GROUP BY
pr.ProductId,
pr.Rating
ORDER BY pr.Rating DESC
,并导致我的查询是:
ProductId Rating percentage
----------- ----------- -----------
57 5 71
57 2 28
但我不怎么显示其他费率数字,如果不存在为零百分比。
感谢所有。
您正在过滤productid = 57.所以,您将只有产品ID 57 – 2017-09-23 10:52:53