1. zadd key [NX|XX] [CH] [INCR] score member [score member …]
将member添加到key中 sore是member排序的依据,是一个双精度的浮点型数字字符串。
+inf(最大)和-inf(最小) 都是有效值。
- XX: 仅仅更新存在的成员,不添加新成员。
- NX: 不更新存在的成员。只添加新成员。
- CH: 修改返回值为发生变化的成员总数
- INCR: 当ZADD指定这个选项时,成员的操作就等同ZINCRBY命令,对成员的分数进行递增操作。
成员不重复,但分数可以相同,分数相同按字典排序,比较的是字符串的字节数组
redis> ZADD myzset 1 "one"
(integer) 1
redis> ZADD myzset 1 "uno"
(integer) 1
redis> ZADD myzset 2 "two" 3 "three"
(integer) 2
redis> ZRANGE myzset 0 -1 WITHSCORES
1) "one"
2) "1"
3) "uno"
4) "1"
5) "two"
6) "2"
7) "three"
8) "3"
redis>
复制代码
2. ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
- 返回key的有序集合中的分数在min和max之间的所有元素(包括分数等于max或者min的元素)。
- 元素被认为是从低分到高分排序的。
- 可选的LIMIT参数指定返回结果的数量及区间
- 可选参数WITHSCORES会返回元素和其分数,而不只是元素
- 默认使用闭区间,你也可以通过给参数前增加 ( 符号来使用可选的开区间
redis> ZADD myzset 1 "one"
(integer) 1
redis> ZADD myzset 2 "two"
(integer) 1
redis> ZADD myzset 3 "three"
(integer) 1
redis> ZRANGEBYSCORE myzset -inf +inf
1) "one"
2) "two"
3) "three"
redis> ZRANGEBYSCORE myzset 1 2
1) "one"
2) "two"
redis> ZRANGEBYSCORE myzset (1 2
1) "two"
redis> ZRANGEBYSCORE myzset (1 (2
(empty list or set)
redis>
复制代码
3. zrem key member [member…]
当key存在,但是其不是有序集合类型,就返回一个错误。
redis> ZADD myzset 1 "one"
(integer) 1
redis> ZADD myzset 2 "two"
(integer) 1
redis> ZADD myzset 3 "three"
(integer) 1
redis> ZREM myzset "two"
(integer) 1
redis> ZRANGE myzset 0 -1 WITHSCORES
1) "one"
2) "1"
3) "three"
4) "3"
redis>
复制代码
4. zcard key
返回key的有序集元素个数。
redis> ZADD myzset 1 "one"
(integer) 1
redis> ZADD myzset 2 "two"
(integer) 1
redis> ZCARD myzset
(integer) 2
redis>
复制代码
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END