Redis-数据类型-Geospatial(地理空间索引)

文章目录

1、查看redis是否启动

bash 复制代码
[root@localhost ~]# ps -ef | grep redis
root       4270      1  0 05:51 ?        00:00:37 /usr/local/redis/bin/redis-server *:6379
root       9104   6858  0 12:42 pts/0    00:00:00 grep --color=auto redis
[root@localhost ~]# 

2、通过客户端连接redis

bash 复制代码
[root@localhost ~]# /usr/local/redis/bin/redis-cli -p 6379
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> 

3、切换到db5数据库

bash 复制代码
127.0.0.1:6379> select 5
OK
127.0.0.1:6379[5]> 

4、将地理位置信息(经度和纬度)添加到 Redis 的键(key)中

GEOADD 是 Redis 的一个命令,用于将地理位置信息(经度和纬度)添加到 Redis 的键(key)中。这些位置信息通常以有序集合(sorted set)的形式存储,每个位置信息都与一个成员(member)相关联。
百度地图拾取坐标系统

4.1、添加大江商厦

bash 复制代码
127.0.0.1:6379[5]> geoadd p1 121.243007 31.022285 sh_djss
(integer) 1
127.0.0.1:6379[5]> 

4.2、添加西部硅谷

bash 复制代码
127.0.0.1:6379[5]> geoadd p1 113.844461 22.632091 sz_xbgg
(integer) 1
127.0.0.1:6379[5]> 

5、升序返回有序集key,让分数一起和值返回的结果集

bash 复制代码
127.0.0.1:6379[5]> zrange p1 0 -1 withscores
1) "sz_xbgg"
2) "4046523425752402"
3) "sh_djss"
4) "4054745256311612"
127.0.0.1:6379[5]> 

6、获取指定地区的坐标

bash 复制代码
127.0.0.1:6379[5]> zrange p1 0 -1 withscores
1) "sz_xbgg"
2) "4046523425752402"
3) "sh_djss"
4) "4054745256311612"
127.0.0.1:6379[5]> geopos p1 sh_djss
1) 1) "121.24300628900527954"
   2) "31.02228624491348086"
127.0.0.1:6379[5]> geopos p1 sz_xbgg
1) 1) "113.84445995092391968"
   2) "22.63209052705867208"
127.0.0.1:6379[5]> 

7、计算两地之间的直接距离

bash 复制代码
127.0.0.1:6379[5]> geodist p1 sh_djss sz_xbgg km
"1186.7119"
127.0.0.1:6379[5]> 

8、查询某个地理位置附近的其他位置

bash 复制代码
127.0.0.1:6379[5]> georadius p1 121.243007 31.022285 1200 km
1) "sz_xbgg"
2) "sh_djss"
127.0.0.1:6379[5]> 

9、在指定元素周围查找其他元素

bash 复制代码
127.0.0.1:6379[5]> georadiusbymember p1 sh_djss 1200 km
1) "sz_xbgg"
2) "sh_djss"
127.0.0.1:6379[5]> 
相关推荐
VX:Fegn08958 分钟前
计算机毕业设计|基于springboot + vue非遗传承文化管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
bleach-16 分钟前
buuctf系列解题思路祥讲--[极客大挑战 2019]HardSQL1——sql报错注入
数据库·sql·安全·web安全·网络安全
少年攻城狮25 分钟前
OceanBase系列---【oracle模式的存在即更新,不存在即新增的merge into用法】
数据库·oracle·oceanbase
波波仔8629 分钟前
clickhouse简介
数据库·clickhouse
不穿格子的程序员34 分钟前
Redis篇2——Redis深度剖析:从SetNX到Redisson,分布式锁的进化之路
数据库·redis·分布式锁·redisson·setnx·redlock
曾富贵38 分钟前
【Prisma】NestJS 集成与核心链路解析
数据库·后端
编程大师哥44 分钟前
SQL 调优 全面解析
数据库·sql·oracle
Dwzun44 分钟前
基于SpringBoot+Vue的农产品销售系统【附源码+文档+部署视频+讲解)
数据库·vue.js·spring boot·后端·毕业设计
IndulgeCui1 小时前
【金仓数据库征文】KingbaseES-问题小记之min_wal_size outside
数据库
柯南二号1 小时前
【后端】【Java】一文详解Spring Boot 统一日志与链路追踪实践
java·开发语言·数据库