三种特殊数据类型
2022/6/21 23:21:48
本文主要是介绍三种特殊数据类型,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
geospatial 地理位置
geoadd:添加地理位置
规则:两级无法添加,我们一般会下载城市数据,直接通过java程序一次性导入。
参数 key 值(经度、纬度、名称)
127.0.0.1:6379> geoadd china:city 116.40 39.90 beijing (integer) 1 127.0.0.1:6379> geoadd china:city 121.47 31.23 shanghai (integer) 1 127.0.0.1:6379> geoadd china:city 106.50 29.53 chongqin 119.64 29.08 jinhua (integer) 2 127.0.0.1:6379> geoadd china:city 120.15 30.28 hangzhou (integer) 1 127.0.0.1:6379> geoadd china:city 108.94 34.26 xian (integer) 1 127.0.0.1:6379> geoadd china:city 114.05 22.52 shengzhen (integer) 1
geopos
127.0.0.1:6379> GEOPOS china:city beijing 获取指定位置的经度和纬度 1) 1) "116.39999896287918091" 2) "39.90000009167092543"
geodist
返回两个位置之间的距离
127.0.0.1:6379> GEODIST china:city jinhua shanghai 金华和上海的直线距离单位米 "296906.9375" 127.0.0.1:6379> GEODIST china:city jinhua shanghai km 金华和上海的直线距离单位千米 "296.9069"
georadius
以给定的经纬度为中心, 找出某一半径内的元素
所有的数据应该都录入china:city中,才会让结果更加精确
127.0.0.1:6379> GEORADIUS china:city 110 30 1000 km 以110 30这个经纬度为中心,寻找方圆1000km内的城市 1) "chongqin" 2) "xian" 3) "shengzhen" 4) "jinhua" 5) "hangzhou" 127.0.0.1:6379> GEORADIUS china:city 110 30 500 km 以110 30这个纬度为中心,寻找房源500km内的城市 1) "chongqin" 2) "xian"127.0.0.1:6379> GEORADIUS china:city 110 30 500 km withcoord 显示城市的经纬度 1) 1) "chongqin" 2) 1) "106.49999767541885376" 2) "29.52999957900659211" 2) 1) "xian" 2) 1) "108.93999785184860229" 2) "34.25999964418929977"127.0.0.1:6379> GEORADIUS china:city 110 30 500 km withcoord withdist count 1 筛选出指定的结果,显示距离和经纬度 1) 1) "chongqin" 2) "341.9374" 3) 1) "106.49999767541885376" 2) "29.52999957900659211" 127.0.0.1:6379> GEORADIUS china:city 110 30 500 km withcoord withdist count 2 1) 1) "chongqin" 2) "341.9374" 3) 1) "106.49999767541885376" 2) "29.52999957900659211" 2) 1) "xian" 2) "484.2186" 3) 1) "108.93999785184860229" 2) "34.25999964418929977"
georadiusbymember
找出指定位置元素周围的其他元素 127.0.0.1:6379> GEORADIUSBYMEMBER china:city shanghai 400 km 1) "jinhua" 2) "hangzhou" 3) "shanghai"
geohash
将二维的经纬度转换为一维的字符串 127.0.0.1:6379> geohash china:city beijing hangzhou 1) "wx4fbxxfke0" 2) "wtmkq069cc0"
geo底层的实现原理其实就是Zset!我们可以使用Zset命令来操作geo!
127.0.0.1:6379> zrange china:city 0 -1 查看地图中全部的元素 1) "chongqin" 2) "xian" 3) "shengzhen" 4) "jinhua" 5) "hangzhou" 6) "shanghai" 7) "beijing" 127.0.0.1:6379> zrem china:city beijing 移除指定的元素 (integer) 1 127.0.0.1:6379> zrange china:city 0 -1 1) "chongqin" 2) "xian" 3) "shengzhen" 4) "jinhua" 5) "hangzhou" 6) "shanghai"
这篇关于三种特殊数据类型的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?
- 2024-05-09企业src漏洞挖掘-有意思的命令执行