2
我有一個評論表,我在其中存儲評論內容,作者ID,並且還有一個字段只能是1或0(如果它是1,這是最佳評論該職位)。我想要做的是通過它的id來計算特定用戶的整個評論中的最佳評論的百分比。我想到的唯一方法是做兩個mysql查詢 - 首先計算最好的評論,然後計算總評論,然後計算百分比,但我相信有一個更好的方法來做到這一點,使用一個MySQL查詢...有沒有?在這種情況下計算百分比的最佳方法
我有一個評論表,我在其中存儲評論內容,作者ID,並且還有一個字段只能是1或0(如果它是1,這是最佳評論該職位)。我想要做的是通過它的id來計算特定用戶的整個評論中的最佳評論的百分比。我想到的唯一方法是做兩個mysql查詢 - 首先計算最好的評論,然後計算總評論,然後計算百分比,但我相信有一個更好的方法來做到這一點,使用一個MySQL查詢...有沒有?在這種情況下計算百分比的最佳方法
好了,你還沒有說你的表模式,但你可以做這樣的事情:
SELECT customer, (SUM(best)/COUNT(comment_id)) * 100 AS percentage_best
FROM comments
GROUP BY customer;
由於best
場是1或0,總結列會給best
評論的數量,然後你可以指望其餘的。
對於特定客戶,您當然可以省略GROUP BY
和初始字段並添加WHERE
子句。
SELECT (SUM(best)/COUNT(comment_id)) * 100 AS percentage_best
FROM comments
WHERE customer = 123;
希望你對customer
領域的INDEX
在任何情況下comments
表。
SUM(最好)請您詳細解釋這部分內容嗎? – 2011-02-11 21:44:18