经纬度地图查询(如何用手机查经纬度准确地点)

介绍Redis3.2中增加了对GEO类型的支持。GEO(Geographic)地理信息的缩写。该类型就是元素的二维坐标,在地图上就是经纬度。Redis基于该类型提供了经纬度设置、查询、范围查询、距离查询、经纬度Hash等常见操作。命令geoaddGEOADDkey[NX|XX][CH]long

介绍

Redis 3.2 中增加了对GEO类型的支持。GEO(Geographic)地理信息的缩写。该类型就是元素的二维坐标,在地图上就是经纬度。Redis基于该类型提供了经纬度设置、查询、范围查询、距离查询、经纬度Hash等常见操作。

命令

geoadd

GEOADD key [NX|XX] [CH] longitude latitude member [longitude latitude member ...]

添加经纬度

  • NX:仅添加元素,不做更新
  • XX:仅更新已存在元素,不能添加元素
  • CH:从添加的新元素的数量修改返回值,更改的元素总数(CH是更改的缩写)。更改的元素是添加的新元素,并且已更新坐标的元素已存在。所以在命令行中指定的元素,没有计数与他们过去的分数相同。注意:通常,GEOADD的返回值仅计算添加的新元素数。

注意:XXNX选项互斥。

示例

geoadd china:city 121.47 31.23 shanghai
geoadd china:city 116.38 39.90 beijing

两极无法直接添加,一般会下载城市数据,直接通过程序一次性导入。

  • 经度:[-180, 180]
  • 维度:[-85.05112878, 85.05112878]

当坐标位置超出指定范围时,该命令会返回一个错误。

geopos

 GEOPOS key member [member ...]

返回指定地区的坐标

示例

geopos china:city shanghai

geodist

GEODIST key member1 member2 [m|km|ft|mi]

返回两个地理位置之间的距离,默认单位为m

  • m:表示单位
  • km:表示单位千米
  • ft:表示单位英尺
  • mi:表示单位英里

示例

geodist china:city beijing shanghai
geodist china:city beijing shanghai km

georadius

GEORADIUS key longitude latitude radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count [ANY]] [ASC|DESC] [STORE key] [STOREDIST key]

以给定的经纬度为中心,找出某一半径内的元素。

单位:

  • m:米,默认值
  • km:千米
  • ft:英尺
  • mi:英里
  • WITHCOORD:将位置元素的经度和纬度也一并返回。
  • WITHDIST:在返回位置元素的同时, 将位置元素与中心之间的距离也一并返回。
  • WITHHASH:以 52bit有符号整数的形式, 返回位置元素经过原始 GEOHASH编码的有序集合分值。 这个选项主要用于底层应用或者调试, 实际中的作用并不大。
  • COUNT:限制返回的数据量
  • ASC:按距离大小,升序排列
  • DESC:按距离大小,降序排列
  • STORE:将项目存储在与其地理空间信息填充的排序组中
  • STOREDIST:将地理空间信息存储在填充的排序组中,填充其距离中心的距离为浮点数,在半径指定的同一单元中。

示例

georadius china:city 110 30 1000 km

geohash

 GEOHASH key member [member ...]

以标准geohash字符串的形式返回地理位置的坐标。

示例

geohash china:city shanghai

创业项目群,学习操作 18个小项目,添加 微信:niuben22  备注:小项目

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 sumchina520@foxmail.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.35chat.cn/50543.html