[英]Calculate average time between post and first comment in two MySQL tables
[英]Calculate average of two tables
我是SQL的新手,我无法弄清楚如何计算两个表中某个值的平均值。
我有一张桌子,里面有世界各地湖泊的所有信息,我有另一张桌子,包括世界上所有海洋的信息。
我想计算海洋和湖泊的平均深度。 我知道以下内容:
SELECT
AVG(depth) AS AvgDepthSeas
FROM
sea
这将使我获得世界上海洋的平均深度。
SELECT
AVG(depth) AS AvgDepthLake
FROM
lake
这将使我获得世界上所有湖泊的平均深度。
我无法弄清楚如何将这两个平均数组合起来计算海洋+湖泊总和的平均值。 我尝试了不同的东西; 计算海洋和湖泊的数量,看看有多少海洋和湖泊,所以我可以将平均数量结合起来,并将它们除以海洋+湖泊/湖泊的总和。
我只知道必须有一种更简单的方法来解决这个问题。
这就是union all
真的很方便的地方:
select avg(depth)
from ((select depth from sea) union all
(select depth from lake)
) sl;
@ CodeBeginner12,你的更长的尝试将是这样的:
select (sum(s.depth)+sum(l.depth))/(count(s.name)+count(l.name))
from seas s, lakes l
戈登的解决方案更清晰,更实用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.