热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

redis的有序集合

redis的有序集合具有集合的性质有序一.集合内1.添加成员zaddkeyscoremember[scoremember…][nx|xx|ch|incr]返回添加成员成功的

redis的有序集合

  • 具有集合的性质
  • 有序

一.集合内

1.添加成员
zadd key score member [score member …] [nx|xx|ch|incr]

  • 返回添加成员成功的个数
  • nx:用于添加,成员不存在才可以添加成功
  • xx:用于更新,成员必须存在
  • ch:返回此次操作后,有序集合元素和分数发生变化的个数
  • incr:对score做增加,相当于zincrby

2.增加成员的分数
zincrby key increament member

127.0.0.1:6379> zadd rank 100 zhangsan
(integer) 1127.0.0.1:6379> zincrby rank 10 zhangsan
"110"

3.计算成员个数
zcard key

  • 返回成员个数

127.0.0.1:6379> zcard rank
(integer) 4

4.计算某个成员的分数
zscore key member

  • 成员不存在则返回nil

127.0.0.1:6379> zscore rank zhangsan
"100"127.0.0.1:6379> zscore rank wangwu
(nil)

5.计算成员的排名
zrank key member

  • 按分数升序排名
  • 排名从0开始计算

zrevrank key member

  • 按分数降序排名
  • 排名从0开始计算

127.0.0.1:6379> zrank rank zhangsan
(integer) 0
127.0.0.1:6379> zrevrank rank lisi
(integer) 0
127.0.0.1:6379> zrevrank rank zhangsan
(integer) 1

6.返回指定排名返回的成员
zrange key start end [withscores]

  • 按分数升序返回
    zrevrange key start end [withscores]
  • 按分数降序返回

127.0.0.1:6379> zrange rank 0 1 withscores
1) "xiaoming"
2) "60"
3) "xiaohong"
4) "77"127.0.0.1:6379> zrevrange rank 0 1 withscores
1) "xiaofang"
2) "150"
3) "zhangsan"
4) "110"

7.返回指定分数范围的成员
zrangebyscore key min max [withscores] [limit offset count]

  • 按分数升序返回
  • limit offset count:限制输出的起始位置和个数
  • 返回最小或最大值支持开区间(小括号标识)和闭区间(默认是闭区间)

zrevrangbyscore key min max [withscores] [limit offset count]

  • 按分数降序返回
  • limit offset count:限制输出的起始位置和个数
  • 返回最小或最大值支持开区间(小括号标识)和闭区间(默认是闭区间)

127.0.0.1:6379> zrangebyscore rank (110 +inf withscores
1) "xiaofang"
2) "150"127.0.0.1:6379> zrangebyscore rank 110 150 withscores
1) "zhangsan"
2) "110"
3) "xiaofang"
4) "150"

8.返回指定分数范围成员个数
zcount key min max

127.0.0.1:6379> zcount rank 110 150
(integer) 2

9.删除成员

zrem key member [member …]

  • 返回成功删除的个数

127.0.0.1:6379> zrem rank lisi
(integer) 1

10.删除指定排名内的升序元素
zremrangebyrank key start end

11.删除指定分数范围的成员
zremrangebyscore key min max

二.集合间的操作

1.交集
zinterstore destination numkeys key [key key …] [weights weight [weight …]] [aggregate sum|min|max]

  • destination:交集计算结果保存位置
  • numkeys:需要做交接计算的个数
  • key:交集计算的键
  • weights:每个键的权重
  • aggregate:计算成员交集后,分值的操作运算

2.并集
zunionstore destination numkeys key [key key …] [weights weight [weight …]] [aggregate sum|min|max]


推荐阅读
author-avatar
手机用户2502909227
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有