计算点与半径HIVE内的中心之间的距离



我使用以下方法从我的蜂巢基准中获取距离我的中心200米以内的所有点。

SELECT * FROM mytable
WHERE ST_GeodesicLengthWGS84(ST_SetSRID(ST_LineString(array(ST_Point(longitude_of_center, 
latitude_of_center), 
ST_Point(longitude_of_point, latitude_of_point))), 4326)) <= 200;

请注意,我还需要获得所选点和中心之间的距离,作为新列DIST.的查询结果的一部分

您可以从与中心配对的每个选定点生成一个LineString,然后在每个这样的LineString上调用GeodesicLengthWGS84。它与where子句中的Length调用相同,但也添加到列投影中(因此类似于select *, ST_GeodesicLengthWGS834(...) from ....

(披露:Esri Spatial Framework for Hadoop的合作者(

相关内容

  • 没有找到相关文章

最新更新