Redis 有序集合操作
2019-09-30 本文已影响0人
blaze冰叔
// zadd 用于往有序集合中添加元素,其中 100 在 Redis 中称为 score(分数),用来进行排序
127.0.0.1:6379> zadd proxies 100 "1.197.204.214:9999"
(integer) 1
// zrange 用于查看集合元素,0 -1 表示查看第一个到最后一个元素
127.0.0.1:6379> zrange proxies 0 -1
// zrevrange 用于反序查看集合元素
127.0.0.1:6379> zrevrange proxies 0 -1
zrange 和 zrevrage 的结果是相反顺序的
// zrem 用于删除指定的集合元素
127.0.0.1:6379> zrem proxies "59.57.149.212:9999"
(integer) 1
// zrank 用于返回指定集合元素的索引值,索引值默认从0开始(从左到右,zrange 和 zrevrage是从1开始)
127.0.0.1:6379> zrank proxies 59.57.148.168:9999
(integer) 125
// zrevrank 用于返回指定集合元素的索引值,索引值默认从0开始(从右到左)
127.0.0.1:6379> zrevrank proxies 59.57.148.168:9999
(integer) 7
// zcard 用于查看集合中所有元素的个数
127.0.0.1:6379> zcard proxies
(integer) 133
// zrangebyscore 用于根据 socre 查询集合元素,这里表示查询 score 为 1~100 的元素
127.0.0.1:6379> zrangebyscore proxies 1 100
1) "1.197.203.123:9999"
2) "1.197.203.225:9999"
3) "1.197.204.106:9999"
……
// zremrangebyrank 用于根据索引值删除集合元素,这里表示删除索引为 0~2 的元素
127.0.0.1:6379> zremrangebyrank proxies 0 2
(integer) 3
// zremrangebyscore 用于根据 score 删除集合元素,这里表示删除 score 为 1~10 的元素
127.0.0.1:6379> zremrangebyscore proxies 1 10
(integer) 0