redis: Zset有序集合类型(七)

存值:zadd myset 1 one
取值:zrange myset 0 -1

127.0.0.1:6379> zadd myset 1 one #存值 分值为1
(integer) 1
127.0.0.1:6379> zadd myset 3 three #存值 分值为3
(integer) 1
127.0.0.1:6379> zadd myset 2 two #存值 分值为2
(integer) 1
127.0.0.1:6379> zrange myset 0 -1 #取值 默认按分值排序
1) "one"
2) "two"
3) "three"

排序(升序):zrangebyscore money -inf +inf
排序(降序):zrevrange money 0 -1 withscores

127.0.0.1:6379> zadd money 2500 zhangsan 
(integer) 1
127.0.0.1:6379> zadd money 1800 lishi
(integer) 1
127.0.0.1:6379> zadd money 1600 wangwu
(integer) 1
127.0.0.1:6379> zadd money 3000 zhaoliu
(integer) 1
127.0.0.1:6379> zrangebyscore money -inf +inf #从负无穷大到正无穷大 升序
1) "wangwu"
2) "lishi"
3) "zhangsan"
4) "zhaoliu"
127.0.0.1:6379> zrangebyscore money -inf +inf withscores #把分值和值一并查询出来
1) "wangwu"
2) "1600"
3) "lishi"
4) "1800"
5) "zhangsan"
6) "2500"
7) "zhaoliu"
8) "3000"
127.0.0.1:6379> zrangebyscore money -inf 2000 withscores #只查询2000以内的
1) "wangwu"
2) "1600"
3) "lishi"
4) "1800"
127.0.0.1:6379> zrevrange money 0 -1 withscores #降序查询
1) "zhaoliu"
2) "3000"
3) "lishi"
4) "1800"
5) "wangwu"
6) "1600"

移除指定的元素:zrem money zhangsan

127.0.0.1:6379> zrange money 0 -1
1) "wangwu"
2) "lishi"
3) "zhangsan"
4) "zhaoliu"
127.0.0.1:6379> zrem money zhangsan #移除zhangsan这个元素
(integer) 1
127.0.0.1:6379> zrange money 0 -1
1) "wangwu"
2) "lishi"
3) "zhaoliu"

移除指定的元素:zrem money zhangsan

127.0.0.1:6379> zrange money 0 -1
1) "wangwu"
2) "lishi"
3) "zhangsan"
4) "zhaoliu"
127.0.0.1:6379> zrem money zhangsan #移除zhangsan这个元素
(integer) 1
127.0.0.1:6379> zrange money 0 -1
1) "wangwu"
2) "lishi"
3) "zhaoliu"

查询有序集合中的元素个数:zcard money

127.0.0.1:6379> zrange money 0 -1
1) "wangwu"
2) "lishi"
3) "zhaoliu"
127.0.0.1:6379> zcard money
(integer) 3

统计区间值个数:zcount money 0 2000

127.0.0.1:6379> zrange money 0 -1 withscores
1) "zhangsan"
2) "1000"
3) "wangwu"
4) "1600"
5) "lishi"
6) "1800"
7) "zhaoliu"
8) "3000"
127.0.0.1:6379> zcount money 0 2000 #统计0-2000之间的个数
(integer) 3

猜你喜欢

转载自www.cnblogs.com/applesnt/p/12642315.html