这是我的表
GID | Distance (KM) | Subdistance (KM) | Iri_avg ------------------------------------------------- 1 | 13.952 | 0 | 0.34 2 | 13.957 | 0.005 | 0.22 3 | 13.962 | 0.010 | 0.33 4 | 13.967 | 0.015 | 0.12 5 | 13.972 | 0.020 | 0.35 ...
我想为每个范围找到Iri_avg
的AVG,
例如......
每5米(默认情况下) 每10米 每100米 每500米
什么是PostgreSQL查询来解决这个问题?
答案 0 :(得分:1)
你的问题不清楚。您的数据有两个距离列,您指的是哪一个?
以下是如何根据子电阻获得平均值的示例。
select floor(subdistance*1000)/5.0)*5.0 as lower_bound, avg(iri_avg) as avg_ari_avg
from t
group by floor(subdistance*1000)/5.0)*5.0
order by 1
表达式“floor(subdistance * 1000)/5.0)* 5.0”得到的最接近的5米增量小于该值。您可以将“5”替换为“10”或“100”以进行其他装箱。
这是一个例子。目前还不清楚你想要哪个列,你想要做什么关于空箱,以及你是在寻找单个查询中的所有bin宽度而不是查询来处理一个bin宽度。