zoukankan      html  css  js  c++  java
  • 理解 Redis(8)

    ordered set 是根据 score值有序排列的数据集合.

    首先还是清空数据, 并清屏, 此步骤省略~~~~

    新建一条 ordered set 数据 myset1, 并存入4个字符串, score 的排列顺序为1-4:

    127.0.0.1:6379> zadd myset1 1 a 2 b 3 c 4 d
    (integer) 4
    

    查看这个数据:

    127.0.0.1:6379> zrange myset1 0 -1
    1) "a"
    2) "b"
    3) "c"
    4) "d"
    

    给 myset1 的值里新加一个字符e, score=100:

    127.0.0.1:6379> zadd myset1 100 e
    (integer) 1
    

    查看最新的 myset1 的值:

    127.0.0.1:6379> zrange myset1 0 -1
    1) "a"
    2) "b"
    3) "c"
    4) "d"
    5) "e"
    

    查看 myset1 的值里一共有几条数据:

    127.0.0.1:6379> zcard myset1
    (integer) 5
    

    根据指定的 score 的范围查看 myset1 的值里一共有几条数据:

    127.0.0.1:6379> zcount myset1 1 3
    (integer) 3
    127.0.0.1:6379> zcount myset1 1 5
    (integer) 4
    127.0.0.1:6379> zcount myset1 1 55
    (integer) 4
    127.0.0.1:6379> zcount myset1 1 101
    (integer) 5
    127.0.0.1:6379> zcount myset1 1 100
    (integer) 5
    127.0.0.1:6379> zcount myset1 1 99
    (integer) 4
    

    删除 myset1 值里的某个数据:

    127.0.0.1:6379> zrem myset1 b
    (integer) 1
    127.0.0.1:6379> zrange myset1 0 -1
    1) "a"
    2) "c"
    3) "d"
    4) "e"
    127.0.0.1:6379> zrem myset1 d
    (integer) 1
    127.0.0.1:6379> zrange myset1 0 -1
    1) "a"
    2) "c"
    3) "e"
    

    查看某个数据的索引值:

    127.0.0.1:6379> zrank myset1 e
    (integer) 2
    127.0.0.1:6379> zrank myset1 a
    (integer) 0
    

    反排序后查询索引:

    127.0.0.1:6379> zrevrank myset1 a
    (integer) 2
    127.0.0.1:6379> zrevrank myset1 e
    (integer) 0
    

    查询 score值, 没有的返回 nil:

    127.0.0.1:6379> zscore myset1 e
    "100"
    127.0.0.1:6379> zscore myset1 a
    "1"
    127.0.0.1:6379> zscore myset1 jsjs
    (nil)
    

    支持对同一个 score值设置多个不同的数据:

    127.0.0.1:6379> zrange myset1 0 -1
    1) "a"
    2) "c"
    3) "e"
    127.0.0.1:6379> zadd myset1 1 aaaa
    (integer) 1
    127.0.0.1:6379> zrange myset1 0 -1
    1) "a"
    2) "aaaa"
    3) "c"
    4) "e"
    127.0.0.1:6379> zadd myset1 1 bbbb
    (integer) 1
    127.0.0.1:6379> zrange myset1 0 -1
    1) "a"
    2) "aaaa"
    3) "bbbb"
    4) "c"
    5) "e"
    

    查询 score值, 再次证明 ordered set 支持对同一个 score值设置多个不同的数据:

    127.0.0.1:6379> zscore myset1 a
    "1"
    127.0.0.1:6379> zscore myset1 aaaa
    "1"
    127.0.0.1:6379> zscore myset1 bbbb
    "1"
    

    查询索引:

    127.0.0.1:6379> zrank myset1 a
    (integer) 0
    127.0.0.1:6379> zrank myset1 aaaa
    (integer) 1
    127.0.0.1:6379> zrank myset1 bbbb
    (integer) 2
    

    根据指定的 score值的范围查出数据:

    127.0.0.1:6379> zrangebyscore myset1 1 2
    1) "a"
    2) "aaaa"
    3) "bbbb"
    127.0.0.1:6379> zrangebyscore myset1 1 4
    1) "a"
    2) "aaaa"
    3) "bbbb"
    4) "c"
    

    以上, 就是关于 ordered set 的相关命令, enjoy~~~~

  • 相关阅读:
    java 技术社区!!
    有关 gridview的 (做东西 容易忘记 记下!)
    【C#复习之虚方法vs抽象类】08.4.3 上午
    高分求解答!!!
    【学习笔记】asp.net MVC!
    asp.net ajax 尝试 之很好很强大!08.4.4
    Linux流量监控工具 – iftop (最全面的iftop教程)
    linux下查看某目录占用的空间大小
    基于CentOS的Linux基本网络配置,包括网卡eth0、DNS、Host等
    ubuntu安装ssh服务
  • 原文地址:https://www.cnblogs.com/rachelross/p/10411811.html
Copyright © 2011-2022 走看看