redis渐入佳境(05) zset类型

来源:互联网 发布:伊藤园三得利 知乎 编辑:程序博客网 时间:2024/05/13 20:08


    博客分类:
  • redis
 

Zset就是有序集合,除了集合的特性外还对每一个集合元素添加了一个顺序的属性,

ZADD方法使用具体如下:ZADD 集合名  序号  集合元素

ZRAGE方法的使用具体如下:ZRANGE 集合名 开始位置 结束位置 [withscores]  //withscores 是指的是否显示序号

 

redis 127.0.0.1:6379>redis 127.0.0.1:6379> ZADD zset1 0 xue //添加一个元素并指定序号(integer) 1redis 127.0.0.1:6379> ZADD zset1 1 lian(integer) 1redis 127.0.0.1:6379> ZADD zset1 2 bo 3 bo//一次添加多个元素并指定序号(integer) 1redis 127.0.0.1:6379> zrange zset1 0 -1 withscores1) "xue"2) "0"3) "lian"4) "1"5) "twoe"6) "2"7) "bo"8) "3"redis 127.0.0.1:6379> ZADD zset1 2 bo //重复添加会返回0(integer) 0redis 127.0.0.1:6379>[redies@localhost redis-2.4]$

ZCARD命令,显示集合中的元素个数

ZCOUNT命令,显示集合中指定的序号范围内的元素的个数

redis 127.0.0.1:6379> ZRANGE zset1 0 -1 withscores1) "xue"2) "0"3) "lian"4) "1"5) "bo"6) "2"redis 127.0.0.1:6379> ZCARD zset1 //显示元素的个数(integer) 3redis 127.0.0.1:6379> ZCOUNT zset1 1 2//显示序号范围内的元素个数(integer) 2

为元素的序号进行自增:ZINCRBY

redis 127.0.0.1:6379> ZRANGE zset1 0 -1 withscores1) "xue"2) "0"3) "lian"4) "1"5) "bo"6) "2"redis 127.0.0.1:6379> zincrby zset1 5 xue //对元素 xue 的序号进行自增5"5"redis 127.0.0.1:6379> ZRANGE zset1 0 -1 withscores1) "lian"2) "1"3) "bo"4) "2"5) "xue"6) "5"redis 127.0.0.1:6379>

ZREVRANGE 倒序显示元素

ZRANGEBYSCORE 根据序号的范围显示元素

ZRANK 显示某个元素在集合中位置根据序号

ZREVRANK 反向

redis 127.0.0.1:6379> ZREVRANGE zset1 0 -1 withscores1) "xue"2) "5"3) "bo"4) "2"5) "lian"6) "1"redis 127.0.0.1:6379> ZRANGEBYSCORE zset1 5 51) "xue"redis 127.0.0.1:6379>redis 127.0.0.1:6379> ZRANK zset1 xue(integer) 2redis 127.0.0.1:6379> ZREVRANK zset1 xue(integer) 0redis 127.0.0.1:6379>

ZREM 删除元素

redis 127.0.0.1:6379> ZRANGE zset1 0 -1 withscores 1) "xue" 2) "0" 3) "lian" 4) "1" 5) "bo" 6) "2" 7) "is" 8) "3" 9) "a"10) "4"11) "good"12) "5"13) "man"14) "6"15) "."16) "7"redis 127.0.0.1:6379> zrem zset1 xue lian bo(integer) 3redis 127.0.0.1:6379>

删除指定范围内的元素:ZREMRANGEBYRANK

redis 127.0.0.1:6379> ZRANGE zset1 0 -1 withscores 1) "is" 2) "3" 3) "a" 4) "4" 5) "good" 6) "5" 7) "man" 8) "6" 9) "."10) "7"redis 127.0.0.1:6379> ZREMRANGEBYRANK zset1 0 1(integer) 2redis 127.0.0.1:6379> ZRANGE zset1 0 -1 withscores1) "good"2) "5"3) "man"4) "6"5) "."6) "7"redis 127.0.0.1:6379>

删除指定的序号范围内的元素:ZREMRANGEBYSCORE

redis 127.0.0.1:6379> ZRANGE zset1 0 -1  withscores 1) "xue" 2) "0" 3) "lian" 4) "1" 5) "bo" 6) "2" 7) "is" 8) "3" 9) "a"10) "4"11) "good"12) "5"13) "man"14) "6"15) "."16) "7"redis 127.0.0.1:6379> ZREMRANGEBYSCORE zset1 5 6(integer) 2redis 127.0.0.1:6379> ZRANGE zset1 0 -1  withscores 1) "xue" 2) "0" 3) "lian" 4) "1" 5) "bo" 6) "2" 7) "is" 8) "3" 9) "a"10) "4"11) "."12) "7"redis 127.0.0.1:6379>

显示元素的序号:ZSCORE

redis 127.0.0.1:6379> ZSCORE zset1 xue"0"redis 127.0.0.1:6379> ZSCORE zset1 lian"1"redis 127.0.0.1:6379>

并集并存储到第三个集合中:ZUNIONSTORE

redis 127.0.0.1:6379> ZRANGE zset1 0 -11) "a"2) "b"3) "c"redis 127.0.0.1:6379> ZRANGE zset2 0 -11) "d"2) "e"3) "f"redis 127.0.0.1:6379> ZUNIONSTORE zset3 2 zset1 zset2(integer) 6redis 127.0.0.1:6379> ZRANGE zset3 0 -1 withscores 1) "a" 2) "0" 3) "b" 4) "2" 5) "d" 6) "3" 7) "c" 8) "4" 9) "e"10) "4"11) "f"12) "5"redis 127.0.0.1:6379>

交集并存入到四三个集合中

redis 127.0.0.1:6379> ZRANGE zset2 0 -11) "d"2) "e"3) "f"redis 127.0.0.1:6379> ZRANGE zset3 0 -11) "a"2) "b"3) "d"4) "c"5) "e"6) "f"redis 127.0.0.1:6379> ZINTERSTORE zset4 2 zset2 zset3(integer) 3redis 127.0.0.1:6379> ZRANGE zset4 0 -11) "d"2) "e"3) "f"redis 127.0.0.1:6379>
0 0
原创粉丝点击