我有 4 组星级小部件保存到我的数据库中,每个星级的值(1-5),用户可以使用这 4 个星级组对其他用户进行评分。
就像是:
is user x a jealous person? * * // (=2)
is user x a happy person? * * * * // (=4)
is user x a clever person? * * * * * // (=5)
is user x a humble person? * * * * * // (=5)
所以在投票后,我得到了这样的记录:
*mysql sample row data
-------------------------------------------------------------------
ID from_user_id to_user_id rate_value
-------------------------------------------------------------------
1 2234 123 2
2 2234 123 4
3 2234 123 5
4 2234 123 5
-------------------------------------------------------------------
运行某种查询。结果如下
id=1
from_user_id = 2234
to_user_id = 123
a1=2
a2=4
a3=5
a4=5
因此,用户可以获得的最佳分数是 20。
在用户有两个或更多得分行后,我想为他保存一个十进制分数,从 0 到 10,比如:7.1。
我怎样才能做到这一点?对不起,我不会数学。