作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我希望使用 Redis 的 GEORADIUS
命令。
但是,该命令只在给定经纬度的二维圆范围内进行搜索。我还需要进行高度搜索,从而在三维球体范围内找到结果。
我如何在 Redis 中实现这一目标?
最佳答案
我相信您实际上想要做的是在 3D 圆柱体(或者如果考虑到地球的球形性质,则为某种圆锥体)内搜索。
海拔搜索本身并不包含在 Redis 的地理空间索引中,但您可以将该属性存储在其自己的 Sorted Set 中作为分数。然后,您可以对高度执行范围搜索 (ZRANGEBYSCORE
),并将结果与半径查询的结果相交 (ZINTER
)(提示:使用临时键 STORE
结果)。
供您引用,这是我对 xyzsets in geo.lua 采取的方法.
关于database - 雷迪斯 GREORADIUS : include altitude?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47804802/
我希望使用 Redis 的 GEORADIUS 命令。 但是,该命令只在给定经纬度的二维圆范围内进行搜索。我还需要进行高度搜索,从而在三维球体范围内找到结果。 我如何在 Redis 中实现这一目标?
我是一名优秀的程序员,十分优秀!