作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
表A:
lat | long | the_geom | code | sign
13.8433095 | 100.6360357 | 0101000020E61.... | ABC | start_point
13.7544738 | 100.5459646 | 0101000020E6..... | ABC | end_point
13.4124215 | 100.6232332 | 0101000020E61.... | DEF | start_point
13.2423438 | 100.2324426 | 0101000020E6..... | DEF | end_point
表 B:
lat | long | the_geom | code
13.7546285 | 100.5458729 | 0101000020E.... | ABC
13.7546698 | 100.5458513 | 0101000020E.... | ABC
13.7547107 | 100.5458233 | 0101000020E.... | DEF
...
我想找到每个点(开始点和结束点)的最近点与表 B 中具有相同代码的每个点进行比较?
解决此问题的最佳 PostGIS 函数/PostgreSQL 查询是什么?
最佳答案
如果您使用的是最新版本的软件,您可以使用 KNN-GiST 技术快速找到 PostGIS 中某个点的 K 个最近邻居。 K 的小值是最快的,而 1 是尽可能小的,所以这对你来说应该很有效。我只将 KNN-GiST 与文本三元组一起使用,但我知道它们也可以与 PostGIS 一起使用——我只是不知道开始使用它的最佳阅读页面。网络搜索“postgis knn gist”显示了很多可能的候选人。
关于postgresql - 如何在 POSTGIS 中找到最近的点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11868353/
我是一名优秀的程序员,十分优秀!