七天玩转Redis | Day3、Redis地理位置、基数统计、位图场景使用详解

youmo_wy 2022-01-23 23:47:09

内容来源:https://bbs.csdn.net/topics/604403179

特殊数据类型:Gaospatial地理位置、Hyperloglog基数统计、Bitmap位图场景

Gaospatial地理位置

国内城市经纬度查询 :http://www.jsons.cn/lngcode/

添加一个或多个地理位置的坐标

-- GEOADD key longitude latitude member [longitude latitude member ...] ( key为该地理位置的索引 longitude表示该位置的经度  latitude表示该位置的纬度 member表示地名  [longitude latitude member ...]表示可以重复添加,中间以空格分隔)

查询一个或多个地理位置坐标

-- GEOPOS key member [member ...] key表示输入时该地理位置的索引 member表示地理位置的名称,可以输入多个中间以空格分开

查询两地之间的距离

-- GEODIST key member1 member2 [unit] key为要查询的两个地理位置的索引,注意两个地理位置需要使用同一个索引,member1为第一个位置名称 member2为第二个位置名称 [unit]为显示的单位,可以是m(米,默认)、km(千米)、ft(英尺)、mi(英里)

以坐标为中心来范围搜索地理位置

-- GEORADIUS key longitude latitude radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count] [ASC|DESC] key为要查询的地理位置的索引 longitude为该地理位置的经度 latitude为该地理位置的纬度 radius表示要查询的半径
m|km|ft|mi表示单位 [WITHCOORD]可选,表示是否输出经纬度 [WITHDIST]可选,表示是否输出距离 [WITHHASH]可选,表示是否输出哈希值 [COUNT count]可选,表示输出几个数据 [ASC|DESC]可选,表示按照距离升序还是降序排列,ASC升序,DESC降序

以位置为中心来范围搜索地理位置

-- GEORADIUSBYMEMBER key member radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count] [ASC|DESC] key为要查询的地理位置的索引
member为要作为中心点的地理位置
radius表示要查询的半径
m|km|ft|mi表示单位
[WITHCOORD]可选,表示是否输出经纬度
[WITHDIST]可选,表示是否输出距离
[WITHHASH]可选,表示是否输出哈希值
[COUNT count]可选,表示输出几个数据
[ASC|DESC]可选,表示按照距离升序还是降序排列,ASC升序,DESC降序

 

Hyperloglog基数统计

创建一组数据

-- PFADD key element [element ...] key为数据集的索引 element为数据集中的数据,可以输入多个,中间以空格分隔

统计数据集的基数数量

 

-- PFCOUNT key [key ...] key为要查询的数据集的索引,可以输入多个,以空格分开

合并数据集

-- PFMERGE destkey sourcekey [sourcekey ...] destkey为要合并到的数据集的名称 sourcekey为要合并的数据集的索引,可以存在多个,中间以空格分隔

Bitmap位图场景

输入位图数据集

-- SETBIT key offset value key为该数据集的索引 offset为要输入的数据的下标 value为要输入的数据,0或1

 统计“1”的个数

-- BITCOUNT key [start end] key表示位图数据集的索引 [start end]表示开始和结束的下标,默认不写就是统计数据集中所有数据

 

...全文
62 回复 打赏 收藏 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

151

社区成员

发帖
与我相关
我的任务
社区描述
开源数据库
其他 其他
社区管理员
  • 数据库小助手
  • 灰小猿
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧