mysql - 如何获取mysql中同一行的列值和平均值?

标签 mysql sql database

我有一个表 tbl 结构,

col1  col2    col3

1       10     3
2       20     3
3       30     4
4       40     4

需要获取输出

col2    col3  Avg

10      3     15
20      3     15
30      4     35
40      4     35

所以基本上我需要 col3 的平均值。 我试过了

select col2,col3,avg(col2) from tbl1 group by col3

但这只会给我们每个匹配组中的第一行。

如何在 mysql 中完成此操作?

最佳答案

select tbl1.col2, tbl1.col3, tbl2.avgcol2 
from tbl1
inner join
(
   select col3,avg(col2) as avgcol2
   from tbl1 
   group by col3
) tbl2 on tbl1.col3 = tbl2.col3

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

相关文章:

PHP 表数据输出不保留结构

php - 使用 SQL 计算列中的单词

java - 在java中获取数据库连接挂起

mysql - 定价概览的数据库设计

MySQL:文本占用多少空间?

mysql - sql语句中的动态表名

java - where 子句中的查询语法错误

sql - dbms_metadata.get_ddl 不工作

c# - 使用c#将文件上传到服务器

c# - 将mysql数据绑定(bind)到wpf应用程序