我可以获得子查询中返回的所有数字的均值吗?例如,我需要从另一个表中附加所有'y'的均值,该表的'x'小于当前行的'x'。
像 -
select a.x,
mean(b.y where b.x<a.x from data2 b) as m_y
from data1 a
它不起作用。获得结果的正确语法(或技巧)是什么?
答案 0 :(得分:1)
除非我遗漏了某些东西,否则你会使用标准的AVG聚合。
这也可以表示为JOIN
select
a.x,
AVG (b.y) AS m_z
from
data1 a
LEFT JOIN
data2 b ON b.x<a.x
group by
a.x
答案 1 :(得分:0)
没关系,我明白了。
select a.x,
select(mean(b.y) where b.x<a.x from data2 b) as m_y
from data1 a
我的sql生锈了不使用。