05.Redis中Zset集合命令与应用场景

有序集合 zset

在这里插入图片描述

ZSet常用操作

命令 说明
zadd key score member [[score member]…] 往有序集合key中加入带分值元素
zrem key member [member …] 从有序集合key中删除元素
zscore key member 返回有序集合key中元素member的分值
zincrby key increment member 为有序集合key中元素member的分值加上increment
zcard key 返回有序集合key中元素个数
zrange key start stop [WITHSCORES] 正序获取有序集合key从start下标到stop下标的元素
zrevrange key start stop [WITHSCORES] 倒序获取有序集合key从start下标到stop下标的元素
zcount key min max 返回有序集 key 中, score 值在 min 和 max 之间的成员的数量
zrangebyscore key min max [WITHSCORES ] [LIMIT offset count] 获取有序集 key 中,所有 score 值介于 min 和 max 之间(包括 min 和 max)的成员,有序成员是按递增(从小到大)排序。
zrevrangebyscore key max min [WITHSCORES ] [LIMIT offset count] 有序集成员按 score 值递减(从大到小)的次序排列。其他同 zrangebyscore; ( 表示不包括。 min , max 可以使用 -inf ,
zrevrangebyscore key max min [WITHSCORES +inf 表示最小和最大;limit 用来限制返回结果的数量和区间 ,limit 0 2 从下标0开始返回两个。

Zset集合操作

命令 说明
zunionstore destkey numkeys key [key …] 并集计算
zinterstore destkey numkeys key [key …] 交集计算

应用场景:

  • Zset集合操作实现排行榜
    1)点击新闻
    zincrby hotNews:20200101 1
    2)展示当日排行前十
    zrevrange hotNews:20200101 0 10 WITHSCORES
    3)七日搜索榜单计算
    zunionstore hotNews:20200101-202001007 7
    hotNews:20200101 hotNews:20200102… hotNews:20200107
    4)展示七日排行前十
    zrevrange hotNews:20200101-202001017 0 10 WITHSCORES

猜你喜欢

转载自blog.csdn.net/lglglglglgui/article/details/108718405