gpt4 book ai didi

mysql - 从平均值中选择平均值

转载 作者:行者123 更新时间:2023-11-29 11:32:49 25 4
gpt4 key购买 nike

我有下表:

rating
--------
| id | account_id | room | kitchen | bathroom |
-----------------------------------------------
| 1 | 1 | 5 | 5 | 5 |
| 2 | 1 | 2 | 4 | 1 |
| 3 | 1 | 5 | 2 | 1 |
-----------------------------------------------

人们可以对房间、厨房和浴室进行评分(1-5 分)。

ID 的平均评分 = 1: 5(因为 15/3 = 5)

ID = 2 的平均评分:2.3333(因为 7/3 = 2.33333)

ID = 3 的平均评分:2.6666(因为 8/3 = 2.66665)

第一个问题

如您所见,ID = 2 => 2.3333...和 ​​ID = 3 => 2.6666 的平均评分。我怎样才能使它成为地板()和天花板()? (当 < .5 => 下限时,当 > .5 => 上限时),以便 ID = 2 的平均评分变为 2(而不是 2.3333),ID = 3 的平均评分变为 3(而不是 2.6666.. .)

第二个问题

我想选择平均评分的平均评分(因此所有行的平均评分)。所以 - 当使用 Floor() 和 ceil() 时,我有 3 个平均评分:5、2 和 3 => 10/15 => 3。我如何达到 3?

提前致谢!

最佳答案

对于第一个问题,答案是 round() :

select round( (room + kitchen + bathroom) / 3)

对于第二个,您只需使用聚合:

select avg(room + kitchen + bathroom)
from ratings;

如果您想要四舍五入结果的平均值:

select round(avg(round(room + kitchen + bathroom)))
from ratings;

但是,这对我来说似乎很奇怪。

关于mysql - 从平均值中选择平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37115230/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com