【发布时间】:2012-03-02 00:31:07
【问题描述】:
+---------+-------------------+------+------+
| NAME | TITLE | SIZE | RANK |
+---------+-------------------+------+------+
| A | Hippo | H | 1 |
| A | Hippo | M | 1 |
| A | Hippo | H | N/A |
| A | Hippo | H | 1 |
| A | Hippo | H | N/A |
| B | Snail | H | 1 |
| B | Snail | M | 1 |
| B | Snail | L | 1 |
| C | Dog | H | 1 |
| C | Dog | M | 1 |
+---------+-------------------+------+------+
从上面提取的确切数据示例
+---------+-------------------+------+------+
| A | Hippo | H | 1 |
| A | Hippo | M | 1 |
| A | Hippo | H | N/A |
| A | Hippo | H | 1 |
| A | Hippo | H | N/A |
+---------+-------------------+------+------+
要点如下:
H = 70 points
M = 20 points
L = 10 points
- Hippo 在 size 列中有 4 个
H。 -
H总共可以等于 70。 - 因此 70/4 = 17.5
- 这意味着每个
H只能有17.5分。 - 如果存在“等级”,则会获得积分。
- Hippo 只有两个“等级”。
- 因此 Hippo 获得 (17.5)x(2)=35 分。
- Hippo 在“大小”列中也有一个
M。 - 因此
M= 20/1 =20。 - 因此河马获得20分。
- Hippo 在 size 列中没有
L。 - 因此没有获得积分。
- 总计 35(来自
H)+ 20(来自M)+ 0(来自L)= 55。
期望的输出
+---------+----------+-------+
| NAME | TITLE | SCORE |
+---------+----------+-------+
| A | Hippo | 55 |
| B | Snail | 100 |
| C | Dog | 90 |
+---------+----------+-------+
你如何在 MySQl 中进行这种复杂的评分/变量处理
【问题讨论】:
标签: mysql