Mysql 如何基于不同的键(不同的列)获取列的和
我想知道如何得到乘积的明确和 我的桌子Mysql 如何基于不同的键(不同的列)获取列的和,mysql,sql,vertica,Mysql,Sql,Vertica,我想知道如何得到乘积的明确和 我的桌子 Name Rating A 3 A 3 B 4 C 3 C 3 我想要的最终结果是 SUM(表1.name和评级时的大小写)/Count(表1.name和评级时的大小写) 最终答案=(3+4+3)/3=10/3=3.33 提前感谢SUM/COUNTAVGso SELECT (SUM(Rating) * 1.0)/COUNT(*) AS result FROM ( SELECT DISTINCT
Name Rating
A 3
A 3
B 4
C 3
C 3
我想要的最终结果是
SUM(表1.name和评级时的大小写)/Count(表1.name和评级时的大小写)
最终答案=(3+4+3)/3=10/3=3.33
提前感谢SUM/COUNT
AVG
so
SELECT (SUM(Rating) * 1.0)/COUNT(*) AS result
FROM (
SELECT DISTINCT *
FROM tab
) AS sub;
SELECT AVG(Rating) AS result
FROM (
SELECT DISTINCT *
FROM tab
) AS sub;
可以是:
SELECT (SUM(Rating) * 1.0)/COUNT(*) AS result
FROM (
SELECT DISTINCT *
FROM tab
) AS sub;
SELECT AVG(Rating) AS result
FROM (
SELECT DISTINCT *
FROM tab
) AS sub;
只是另一种观点 查找每个名称的平均评分,然后查找分组的平均评分 查询
select avg(t.`avg`) as `avg` from
(
select Name,
avg(rating) as `avg`
from your_table_name
group by Name
)t;
这是另一种观点,它完全被打破了。例子。平均值的平均值与数据集的平均值不同。在您的特定示例中,组中的所有数据都是相同的,但当您有不同的值时,它将失败,例如(A,3),(A,1)。@lad2025:在创建的示例中,它应该是3.1111。让我们计算一下(3+4+3+1)/4=2.75为什么您的问题被标记为Vertica和MySQL?