zoukankan      html  css  js  c++  java
  • zset 有序集合




















    zadd key score1 value1 score2 value2 ..

    添加元素
    redis 127.0.0.1:6379> zadd stu 18 lily 19 hmm 20 lilei 21 lilei
    (integer) 3

    zrem key value1 value2 ..

    作用: 删除集合中的元素

    zremrangebyscore key min max

    作用: 按照socre来删除元素,删除score在[min,max]之间的
    redis 127.0.0.1:6379> zremrangebyscore stu 4 10
    (integer) 2
    redis 127.0.0.1:6379> zrange stu 0 -1

    1. "f"

    zremrangebyrank key start end

    作用: 按排名删除元素,删除名次在[start,end]之间的
    redis 127.0.0.1:6379> zremrangebyrank stu 0 1
    (integer) 2
    redis 127.0.0.1:6379> zrange stu 0 -1

    1. "c"
    2. "e"
    3. "f"
    4. "g"

    zrank key member

    查询member的排名(升续 0名开始)

    zrevrank key memeber

    查询 member的排名(降续 0名开始)

    ZRANGE key start stop [WITHSCORES]

    把集合排序后,返回名次[start,stop]的元素
    默认是升续排列
    Withscores 是把score也打印出来

    zrevrange key start stop

    作用:把集合降序排列,取名字[start,stop]之间的元素

    zrangebyscore key min max [withscores] limit offset N

    作用: 集合(升续)排序后,取score在[min,max]内的元素,
    并跳过 offset个, 取出N个
    redis 127.0.0.1:6379> zadd stu 1 a 3 b 4 c 9 e 12 f 15 g
    (integer) 6
    redis 127.0.0.1:6379> zrangebyscore stu 3 12 limit 1 2 withscores

    1. "c"
    2. "4"
    3. "e"
    4. "9"

    zcard key

    返回元素个数

    zcount key min max

    返回[min,max] 区间内元素的数量

    zinterstore destination numkeys key1 [key2 ...]

    [WEIGHTS weight [weight ...]]
    [AGGREGATE SUM|MIN|MAX]
    求key1,key2的交集,key1,key2的权重分别是 weight1,weight2
    聚合方法用: sum |min|max
    聚合的结果,保存在dest集合内

    注意: weights ,aggregate如何理解?
    答: 如果有交集, 交集元素又有socre,score怎么处理?
    Aggregate sum->score相加 , min 求最小score, max 最大score

    另: 可以通过weigth设置不同key的权重, 交集时,socre * weights

    详见下例
    redis 127.0.0.1:6379> zadd z1 2 a 3 b 4 c
    (integer) 3
    redis 127.0.0.1:6379> zadd z2 2.5 a 1 b 8 d
    (integer) 3
    redis 127.0.0.1:6379> zinterstore tmp 2 z1 z2
    (integer) 2
    redis 127.0.0.1:6379> zrange tmp 0 -1

    1. "b"
    2. "a"
      redis 127.0.0.1:6379> zrange tmp 0 -1 withscores
    3. "b"
    4. "4"
    5. "a"
    6. "4.5"
      redis 127.0.0.1:6379> zinterstore tmp 2 z1 z2 aggregate sum
      (integer) 2
      redis 127.0.0.1:6379> zrange tmp 0 -1 withscores
    7. "b"
    8. "4"
    9. "a"
    10. "4.5"
      redis 127.0.0.1:6379> zinterstore tmp 2 z1 z2 aggregate min
      (integer) 2
      redis 127.0.0.1:6379> zrange tmp 0 -1 withscores
    11. "b"
    12. "1"
    13. "a"
    14. "2"
      redis 127.0.0.1:6379> zinterstore tmp 2 z1 z2 weights 1 2
      (integer) 2
      redis 127.0.0.1:6379> zrange tmp 0 -1 withscores
    15. "b"
    16. "5"
    17. "a"
    18. "7"
  • 相关阅读:
    解决Cannot delete or update a parent row: a foreign key constraint fails的mysql报错
    zabbix4.2绘制网络拓扑图-添加链路速率
    zabbix 添加宏变量
    238_Product of Array Except Self
    122_Best Time to Buy and Sell Stock II
    260_Single Number III
    C# 比较时间问题
    226_Invert Binary Tree
    100_Same Tree
    283_Move Zeroes
  • 原文地址:https://www.cnblogs.com/qinsilandiao/p/10877406.html
Copyright © 2011-2022 走看看