redis是一个开源的,先进的key-value存储,属于非关系型缓存数据库,通常被称为数据结构服务器。redis一共有五种基本的数据类型,String类型、hash类型、list类型以及set(无序集合)和zset(有序集合),本篇文章为大家分享一下zset类型使用方法。
sorted set是set的一个升级版本,他在set的基础上增加了一个顺序属性。这一属性在修改元素的时候可以指定,每次指定后,zset会自动按照新的值调整顺序,是有序集合。可以理解为有两列的MySQL表,一列存value,一列存顺序。操作中key理解为zset的名字。
zset数据类型方法
zadd:向指定集合zset中添加元素member,score用于排序,如果该元素已经存在,则更新其顺序
zrange:查看sourted sets里面的所有元素
zrem:删除名称为key的zset中的元素member(即删除指定zset里面的指定元素)
zincrby:如果在某一个zset中已经存在元素member,则该元素的score增加increment。否则向该集合中添加该元素,其score的值就为指定的increment值
zrank:返回某一个zset中指定元素的索引值(不是插入的时候指定的那个顺序值,是元素的下标)。这个索引值是按照元素的score值从小到大排列的,score值越小,索引值(下标)就越小,score值越大,索引值(下标)就越大
zrevrank:返回某一个zset中指定元素的索引值(不是插入的时候指定的那个顺序值,是元素的下标)。这个索引值是按照元素的score值从大到小排列的,score值越小,索引值(下标)就越大,score值越大,索引值(下标)就越小
zrevrange:返回某一个zset集合中的指定区间的元素及其顺序值,按照score值从大到小降序排列,与zrange相反
zrangebyscore:返回集合中指定顺序值区间的元素
zcount:返回集合中指定顺序值区间的元素总数量
zcard:返回集合中的所有元素个数
zremrangebyrank:删除在集合中排名在给定索引值(下标)区间的元素(注意:是按照索引值删除,这里不是顺序值)
zremrangebyscore:删除在集合中排名在给定顺序值区间的元素(注意:是按照顺序值删除,这里不是索引值)
案例演示
往zset中加入数据并罗列出来
带有分数的显示出来
插入0分的e和6分的f,并显示,可以看出e排在最前面,因为分数最小,f排在最后面,因为分数最大
获得某个元素的下标
获取某个元素的分数
统计zset中元素的个数
根据分数获取分数范围内元素的个数
根据分数得到的数据集进行分页处理
删除某个元素
以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !