`

Redis基本数据类型介绍及相关方法介绍笔记--Zset(Sorted set)类型

阅读更多

Redis五种数据类型之 Zset 类型

ZSets类型是一种有序集合,在set基础上添加顺序属性,添加元素时指定顺序,每次指定后zset会自动重新按照顺序将值重新调整顺序,可以理解为两列mysql表,一列存value一列存顺序key。

下面切入正题咯:

 常用命令总结(自用总结 不喜勿喷):

示意图

|      value      |      order      |

|     harbor     |         1         |

|     chung      |        2          |

取1时得到harbor

取2时得到值chung

 

1.zadd方法

添加一个新元素

eg:

127.0.0.1:6379> zadd zset 1 “harbor"

(integer) 1

127.0.0.1:6379> zadd zset 2 "harborChung"

(integer) 1

 

2.zrange方法

取元素 0代表索引起始位置 -1代表所以结束为止 可选命令 withscores输出顺序号

eg:

127.0.0.1:6379> zrange zset 0 -1 withscores

1) "harbor"

2) "1"

3) "harborChung"

4) “2"

 

3.zrem方法

删除名称为key的zset中的元素member,返回值1代表成功,0代表失败.

eg:

127.0.0.1:6379> zrem zset aa

(integer) 0

127.0.0.1:6379> zrem zset "harbor"

(integer) 1

127.0.0.1:6379> zrange zset 0 -1 withscores

1) "harborChung"

2) “2"

 

4.zincrby方法

以指定值增加相应key中的顺序

如果在名称为key的zset中已存在member,则将此元素的次序增加指定值,否则向该集合添加此元素并使其顺序值为指定值。返回值为该元素的顺序值

eg:

127.0.0.1:6379> zincrby zset 10 "harbor"

"10"

127.0.0.1:6379> zrange zset 0 -1 withscores

1) "harborChung"

2) "2"

3) "harbor"

4) “11"

不存在该元素情况:

127.0.0.1:6379> zincrby zset 11 "harbor"

"21"

127.0.0.1:6379> zincrby zset 11 "harborZZZ"

"11"

127.0.0.1:6379> zrange zset 0 -1 withscores

1) "harborChung"

2) "2"

3) "harborZZZ"

4) "11"

5) "harbor"

 6) “21"

 

5.zrank方法

返回名称为key的zset中的member元素排名(索引)按下标排序 从小到大

eg:

127.0.0.1:6379> zrange zset 0 -1 withscores

1) "harborChung"

2) "2"

3) "harborZZZ"

4) "11"

5) "harbor"

6) "21"

127.0.0.1:6379> zrank zset "harbor"

(integer) 2

127.0.0.1:6379> zrank zset "harborChung"

(integer) 0

127.0.0.1:6379> zrank zset "harborZZZ"

 (integer) 1

 

6.zrevrank方法

返回名称为key的zset中的member元素排名(索引)按下标排序 从大到小

eg:

127.0.0.1:6379> zrevrank zset "harborChung"

(integer) 2

127.0.0.1:6379> zrevrank zset "harbor"

(integer) 0

127.0.0.1:6379> zrevrank zset "harborZZZ"

(integer) 1

127.0.0.1:6379> zrange zset 0 -1 withscores

1) "harborChung"

2) "2"

3) "harborZZZ"

4) "11"

5) "harbor"

6) “21"

 

7.zrevrange方法

按照顺序反向(降序)排序

与Zrange对比:

eg:

127.0.0.1:6379> zrange zset 0 -1 withscores

1) "harborChung"

2) "2"

3) "harborZZZ"

4) "11"

5) "harbor"

6) "21"

127.0.0.1:6379> zrevrange zset 0 -1 withscores

1) "harbor"

2) "21"

3) "harborZZZ"

4) "11"

5) "harborChung"

6) "2"

 

 8.zrangebyscore方法

查找给定顺序范围内的元素并返回这些元素 给定范围构成的闭集合 如2 11则返回序号2(包括2)到序号11的这些元素(包括11).

eg:

127.0.0.1:6379> zrangebyscore zset 2 15 withscores

1) "harborChung"

2) "2"

3) "harborZZZ"

4) “11"

 

9.zcount方法

返回集合中score在给定区间的数量

eg:

127.0.0.1:6379> zcount zset 2 11 

(integer) 2

 

10. zcard方法

返回该集合中的所有元素个数

eg:

127.0.0.1:6379> zcard zset  

(integer) 3

127.0.0.1:6379> zrange zset 0 -1 withscores

1) "harborChung"

2) "2"

3) "harborZZZ"

4) "11"

5) "harbor"

6) "21"

 

11.zremrangebyrank方法

按下标升序排序后删除给定区间内的元素

(删除集合中索引在给定区间的元素)

输入参数为给定区间范围 含义为索引

eg:

—删除索引为1 2 的元素

127.0.0.1:6379> zrange zset 0 -1 withscores

1) "harborChung"

2) "2"

3) "harborZZZ"

4) "11"

5) "harbor"

6) "21"

127.0.0.1:6379> zremrangebyrank zset 1 2 

(integer) 2

127.0.0.1:6379> zrange zset 0 -1 withscores

1) "harborChung"

 2) "2"

 

—删除所有元素

127.0.0.1:6379> zremrangebyrank zset 0 -1 

(integer) 1

127.0.0.1:6379> zrange zset 0 -1 withscores

(empty list or set)

 

12.zremrangebyscore方法

按下标升序排序后删除给定区间内的元素

(删除集合中序号在给定区间的元素)

输入参数为给定区间范围 含义为序号

eg:

127.0.0.1:6379> zrange zset 0 -1 withscores

 1) "harbor"

 2) "1"

 3) "harborChung"

 4) "2"

 5) "ChungH"

 6) "10"

 7) "Chung"

 8) "30"

 9) "ZZZChung"

10) "32"

127.0.0.1:6379> zremrangebyscore zset 30 35

(integer) 2

127.0.0.1:6379> zrange zset 0 -1 withscores

1) "harbor"

2) "1"

3) "harborChung"

4) "2"

5) "ChungH"

6) “10"

分享到:
评论

相关推荐

    8-Redis常用命令-list-set-zset.docx

    8-Redis常用命令-list-set-zset.docx

    lua-zset, redis排序集相同的lua数据结构.zip

    lua-zset, redis排序集相同的lua数据结构 zset构建&测试make && lua test_sl.lua && lua test.lua

    Redis笔记-尚硅谷周阳V1.3-脑图

    根据《Redis笔记-尚硅谷周阳V1.3》整理,脑图、思维导图xmind

    Redis非关系型数据库笔记-数据持久化-主从同步-缓存-笔记-五大数据类型-三大特殊数据类型

    数据类型丰富:Redis支持多种数据类型,如字符串(string)、散列(hash)、列表(list)、集合(set)和有序集合(sorted set)等。这使得Redis能够灵活地应对不同的应用场景。 速度极快:Redis的速度非常快,每秒...

    Redis-x64-5.0.10

    这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。 redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、...

    Redis笔记整理-五中数据类型之String和Hash

    Redis笔记整理-五中数据类型之String和Hash,这两种数据类型是我们常用语做缓存,从而减轻数据库的压力,缓存我们一般放到服务成,被多个表现成调用达到公用性

    Java操作Redis的多种数据类型

    使用Java操作Redis的字符串类型、list链表类型、hash哈希表类型、set无序集合类型的数据,简单易懂。

    3.Redis数据类型之List类型

    3.Redis数据类型之List类型

    jizq-redis-mq

    jizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-redis-mqjizq-...

    数据结构Redis中数据类型对应的数据结构.pdf

    数据结构 数据结构Redis中数据类型对应的数据结构 中数据类型对应的数据结构 Redis Redis 是⼀种键值(Key-Value)数据库。相对于关系型数据库(⽐如 MySQL),Redis 也被叫作⾮关系型数据库。 像 MySQL 这样的关系...

    redis帮助文档之sorted-set.md

    redis帮助文档之sorted_set

    windows-redis_5.0.14.1

    新增加的Stream(流)数据类型,这样redis就有了6大数据类型,另外五种是String(字符串),Hash(哈希),List(列表),Set(集合)及Zset(sorted set有序集合)。它弥补了其它5种数据类型不能实现的功能,比如List...

    Redis-基本数据类型与内部存储结构

    Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。这五种数据类型在内部的存储格式存在多种。

    Java redis五种数据类型在Java中的详细使用

    主要介绍redis五种数据类型在Java中的详细使用 , 注释特别详细, 里面有我邮箱, 不懂的地方随时问我. 非常值得学习. 更多redis资料, 请与我邮箱联系!

    Redis-for-windows-x64-2.8.2400

    和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更...

    【Redis】——常用五大数据类型之Zset,算法数据结构

    【Redis】——常用五大数据类型之Zset,算法数据结构 五大常用算法

    redis学习笔记

    因为它的 value 不仅包括基本的 string 类型还有 list,set ,sorted set 和 hash 类型。当 然这些类型的元素也都是 string 类型。也就是说 list,set 这些集合类型也只能包含 string 类型。你可以在这些类型上做很多...

    redis-x64-3.2.1

    和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更...

    Redis数据类型视频

    在本课程中,你将了解Redis是什么、能干什么、如何用,了解NoSQL的使用场景和概念,快速掌握Redis的安装配置、五大数据类型、常用操作命令、Redis持久化、主从复制、事务控制以及用Jedis操作进行Java开发等知识。...

    Redis学习资料

    Redis学习手册 Set数据类型 doc Redis学习手册 Sorted Sets数据类型 doc Redis学习手册 String数据类型 doc Redis学习手册 主从复制 doc Redis学习手册 事务 doc Redis学习资料 rar redis讲义 doc">redis 2 8 13 tar...

Global site tag (gtag.js) - Google Analytics