mysql - 如何获得三列中的平均值?

标签 mysql

我有一张名为 rating 的表:

id | helpful | necesary | lenght
1  |    3    |    1     |   5
1  |    4    |    3     |   2
2  |    5    |    3     |   5
3  |    3    |    3     |   5
1  |    1    |    2     |   3
3  |    2    |    3     |   2

此表存储用户对一篇文章从 1 到 5 的评分。...我如何查询具有最高评分的前 5 个 id,并对 3 列有用、必要、长度进行平均?

AVG 为我提供了一列的平均值,LIMIT 为我提供了前 5 名,但我无法开始了解如何对三列进行平均。

最佳答案

也许你想这样做:

SELECT id FROM (
    SELECT id, (helpful + necesary + legnth) / 3 average
        FROM rating ORDER BY average DESC
) t
LIMIT 5;

关于mysql - 如何获得三列中的平均值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25815723/

相关文章:

php - 根据 mysql 的输入填充表

java - 从 jsp 调用方法时出错,但从 Java 类调用方法时出错

mysql - 计算移动平均 MySQL?

c# - MySQL 错误 2003 : Can't connect to MySQL server on 'localhost'

mysql - 将第一个日期插入到当月结束日期的存储过程

尝试导出或导入时 Mysql 卡住了

c# - 如何在 C# 中可视化 MySQL 查询字符串

mysql - 合并一列sql中的特定行

php select语句没有给出答案

mysql - 尝试获取每 15 分钟的组数