zoukankan      html  css  js  c++  java
  • redis 学习(7) -- 有序集合

    redis 学习(7) -- 有序集合

    zset 结构

    • 有序集合:有序、不能包含重复元素
    • 每个节点包含:score和value两个属性,根据score进行排序

    如图:

    zset 重要 API

    含义 命令
    zadd key score1 member1 [score2 member2...] 向有序集合添加一个或多个成员,或者更新已存在成员的分数
    zrem key member1 [member2...] 从有序集合中删除一个或多个成员
    zscore key member 获取有序集合中成员的分数
    zincrby key increment member 对有序集合中指定成员的分数加上增量increment
    zcard key 返回有序集合中元素的总个数
    zrange key start end [withscores] 通过索引返回有序集合中指定区间的成员信息
    zrangebyscore key min max [withscores][limit] 通过score返回有序集合中指定分数区间的成员信息
    zscore key min max 返回有序集合中指定分数范围内的元素个数
    zremrangebyscore key min max 删除有序集合中指定分数区间的所有成员
    zremrangebyrank key start end 删除有序集合中给定索引区间的所有成员

    演示

    127.0.0.1:6381> zadd player:rank 1000 ronaldo 900 messi 800 c-ronaldo 600 kaka
    (integer) 4
    127.0.0.1:6381> zrange player:rank 0 -1
    1) "kaka"
    2) "c-ronaldo"
    3) "messi"
    4) "ronaldo"
    127.0.0.1:6381> zcount player:rank 700 901
    (integer) 2
    127.0.0.1:6381> zrangebyscore player:rank 700 901
    1) "c-ronaldo"
    2) "messi"
    127.0.0.1:6381> zremrangebyrank player:rank 0 1
    (integer) 2
    127.0.0.1:6381> zrange player:rank 0 -1
    1) "messi"
    2) "ronaldo"
    127.0.0.1:6381> zrange player:rank 0 -1 withscores
    1) "messi"
    2) "900"
    3) "ronaldo"
    4) "1000"
    127.0.0.1:6381> 
    
    

    实战

    排行榜功能

    使用有序集合,运用zrange,zrangebyscore、zrangebyrank 等命令可以实现排行榜功能。

  • 相关阅读:
    图片一句话木马简单制作方法
    kali各工具使用介绍
    隐写工具zsteg安装及使用教程
    内网渗透中mimikatz的使用
    kali meterpreter中mimikatz模块获取密码
    一个恐怖份子上传了这张照片到社交网络。里面藏了什么信息?
    攻防世界MISC进阶之签到题
    EMC存储重装系统分区丢失恢复方法
    服务器数据迁移方法
    教您分辨U盘不能识别是哪儿坏了
  • 原文地址:https://www.cnblogs.com/weixuqin/p/10941614.html
Copyright © 2011-2022 走看看