redis数据类型:sorted sets类型及操作
sorted sets类型及操作:
sorted set是set的一个升级版本,它是在set的基础上增加了一个顺序
属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset会
自动重新按新的值调整顺序。可以理解为两列的mysql表,一列存value,
一列存顺序。操作中key理解为zset的名字。
zadd方法:跟set的区别是带有排序数
127.0.01:6379> zadd zset1 1 one
(integer) 1
127.0.01:6379> zadd zset1 1 two
(integer) 1
127.0.01:6379> zadd zset1 1 three
(integer) 1
127.0.01:6379> zrange zset1 0 -1
1) "one"
2) "three"
3) "two"
127.0.01:6379> zrange zset1 0 -1 withscores
1) "one"
2) "1"
3) "three"
4) "1"
5) "two"
6) "1"
zrem方法:删除集合中的指定元素
127.0.01:6379> zrem zset1 one
(integer) 1
127.0.01:6379> zrange zset1 0 -1 withscores
1) "three"
2) "1"
3) "two"
4) "1"
zincrby方法:如果该元素存在,将其score值增加,如果该元素
不存在,就插入该元素,其score值为increase设置的值
127.0.01:6379> ZINCRBY zset1 2 two
"3"
127.0.01:6379> zrange zset1 0 -1 withscores
1) "three"
2) "1"
3) "two"
4) "3"
127.0.01:6379>
zrank方法:返回名称为key的zset中member元素的排名
(按score从小到大排序)即下标
127.0.01:6379> zrange zset1 0 -1 withscores
1) "three"
2) "1"
3) "two"
4) "3"
127.0.01:6379> zrank zset1 two
(integer) 1
zrevrank方法:返回名称为key的zset中member元素的排名
(按score从大到小排序)即下标
127.0.01:6379> zrange zset1 0 -1 withscores
1) "three"
2) "1"
3) "two"
4) "3"
127.0.01:6379> zrevrank zset1 two
(integer) 0
zrevrange方法:集合按score值从大到小降需排序
127.0.01:6379> zrevrange zset1 0 -1 withscores
1) "two"
2) "3"
3) "three"
4) "1"
zrangbyscore方法:返回集合中给定范围的元素
127.0.01:6379> zrevrange zset1 0 -1 withscores
1) "ont"
2) "5"
3) "two"
4) "3"
5) "three"
6) "1"
127.0.01:6379> ZRANGEBYSCORE zset1 1 3
1) "three"
2) "two"
zcount方法:返回给定score范围的元素数量
127.0.01:6379> zcount zset1 1 3
(integer) 2
zcard方法:返回集合的元素个数
127.0.01:6379> ZCARD zset1
(integer) 3
zremrangebyrank方法:删除下标为指定范围的元素
zremrangebyscore方法:删除score为指定范围的元素
127.0.01:6379> zrange zset1 0 -1
1) "three"
2) "two"
3) "ont"
127.0.01:6379> ZREMRANGEBYRANK zset1 0 1
(integer) 2
127.0.01:6379> zrange zset1 0 -1
1) "ont"
最新文章
- VS2013如何避开安装时IE10的限制
- java-并发-高级并发对象1
- ajax异步提交的两种方法
- Java web MVC开发模式入门感悟
- 实战录 | 基于openflow协议的抓包分析
- crsctl stat res -t 和 crsctl stat res -init -t
- HMM隐马尔科夫模型
- Chapter 1.简单工厂模式
- R语言与数据分析之九:时间内序列--HoltWinters指数平滑法
- python如何安装模块
- Slop One 算法
- 区别 chown和chmod的用法
- [Swift]LeetCode267.回文全排列 II $ Palindrome Permutation II
- Python包的相对导入时出现问题解决
- codeforces 185A Plant(推公式)
- Ubuntu下Eclipse的安装方法
- 20162327WJH实验五——数据结构综合应用
- 2:C#TPL探秘
- python是如何进行内存管理的?
- 【题解】洛谷P2679 [NOIP2015TG] 子串(DP+滚动数组)