标签:
ZADD key score member[score member ... ]:将一个或多个member元素及其score值加入到有序集key中。如果member已经是有序集合中的值,则更新score。score是整数值,双精度值。如果key不存在,则创建一个有序集合,并加入。如果key不是一个有序集合,则返回一个错误。
返回值:成功添加的数量,不包含已经存在和更新的成员。
127.0.0.1:6379> ZADD page_rank 10 google.com
(integer) 1
127.0.0.1:6379> ZADD page_rank 9 baidu.com 8 bing.com
(integer) 2
127.0.0.1:6379> ZRANGE page_rank 0 -1 WITHSCORES
1) "bing.com"
2) "8"
3) "baidu.com"
4) "9"
5) "google.com"
6) "10"
127.0.0.1:6379> ZADD page_rank 10 google.com
(integer) 0
127.0.0.1:6379> ZRANGE page_rank 0 -1 WITHSCORES
1) "bing.com"
2) "8"
3) "baidu.com"
4) "9"
5) "google.com"
6) "10"
127.0.0.1:6379>
返回值:当key存在并且是有序集合时,返回key的基数。当key不存在时,返回0。
127.0.0.1:6379> ZCARD page_rank
(integer) 3
127.0.0.1:6379> EXISTS none_exists_key
(integer) 0
127.0.0.1:6379> ZCARD none_exists_key
(integer) 0
ZCOUNT key min max:返回有序集合Key中,score在min, max包含两者的个数。
返回值:score在[min, max]中的个数。
127.0.0.1:6379> ZCOUNT page_rank 0 -1
(integer) 0
127.0.0.1:6379> ZCOUNT page_rank 0 10
(integer) 3
ZINCRBY key increment member:为有序集key的成员member的score值加上增量member。当key不存在,或member不是key 的成员时,相当于执行ZADD key increment member。
返回值:member成员新的score值。
127.0.0.1:6379> ZSCORE salary tom
(nil)
127.0.0.1:6379> ZINCRBY salary 2000 tom
"2000"
127.0.0.1:6379> ZSCORE salary tom
"2000"
127.0.0.1:6379> ZINCRBY salary 2000 tom
"4000"
127.0.0.1:6379> ZSCORE salary tom
"4000"
127.0.0.1:6379> ZRANGE page_rank 0 -1 WITHSCORES
1) "bing.com"
2) "8"
3) "baidu.com"
4) "9"
5) "google.com"
6) "10"
127.0.0.1:6379> ZRANGE page_rank 1 2 WITHSCORES
1) "baidu.com"
2) "9"
3) "google.com"
4) "10"
127.0.0.1:6379> ZRANGE page_rank 2 100 WITHSCORES
1) "google.com"
2) "10"
ZRANGEBYSCORE key min max[WITHSCORES] [LIMITOFFSET COUNT]:返回有序集合中,值介于min max之间的值,有序集合按score值递增排列。
返回值:指定区间内,有序成员列表。
127.0.0.1:6379> ZADD salary 2500 jack
(integer) 1
127.0.0.1:6379> ZADD salary 2500 tom
(integer) 0
127.0.0.1:6379> ZADD salary 12000 peter
(integer) 1
127.0.0.1:6379> ZADD salary 100 jery
(integer) 1
127.0.0.1:6379> ZRANGEBYSCORE salary -inf +inf
1) "jery"
2) "jack"
3) "tom"
4) "peter"
127.0.0.1:6379> ZRANGEBYSCORE salary -inf 5000 WITHSCORES
1) "jery"
2) "100"
3) "jack"
4) "2500"
5) "tom"
6) "2500"
127.0.0.1:6379> ZRANGEBYSCORE salary (1000 400000
1) "jack"
2) "tom"
3) "peter"
ZRANK key member:返回有集合key中member的排名,默认按照score值递增。
返回值:返回member在key中的排名。
127.0.0.1:6379> ZRANK salary tom
(integer) 2
127.0.0.1:6379> ZRANK salary tom_none
(nil)
ZREM key [member...]:移除集合key中的一个或者多个member。
返回值:被成功移除的member的数量,被忽略的不计入。
127.0.0.1:6379> ZRANGE page_rank 0 -1 WITHSCORES
1) "bing.com"
2) "8"
3) "baidu.com"
4) "9"
5) "google.com"
6) "10"
127.0.0.1:6379> ZREM page_rank google.com
(integer) 1
127.0.0.1:6379> ZREM page_rank baidu.com bing.com so.com
(integer) 2
127.0.0.1:6379>
ZREMRANGEBYRANK key start stop:移除集合key中,指定排名闭区间内的所有集合。
返回值:被移除的成员变量。
127.0.0.1:6379> ZRANGE salary 0 -1 WITHSCORES
1) "jery"
2) "100"
3) "jack"
4) "2500"
5) "tom"
6) "2500"
7) "peter"
8) "12000"
127.0.0.1:6379> ZREMRANGEBYRANK salary 0 1
(integer) 2
127.0.0.1:6379> ZRANGE salary 0 -1 WITHSCORES
1) "tom"
2) "2500"
3) "peter"
4) "12000"
ZREMRANGEBYSCORE ken min max:移除集合Key中score介于min max闭区间内的成员。
返回值:被移除的成员数量。
127.0.0.1:6379> ZRANGE salary 0 -1 WITHSCORES
1) "Jim"
2) "1000"
3) "tom"
4) "2500"
5) "peter"
6) "12000"
127.0.0.1:6379> ZREMRANGEBYSCORE salary 1500 3500
(integer) 1
127.0.0.1:6379> ZRANGE salary 0 -1 WITHSCORES
1) "Jim"
2) "1000"
3) "peter"
4) "12000"
ZREVRANGE key start stop WITHSCORES:按score递减的顺序返回闭区间内的成员。基本与ZRANGE相同。
ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]:返回集合中,score介于max和min之间的成员,按score递减排列。ZRANGEBYSCORE命令相似。
ZREVRANK key member:返回集合Key中,member的排名,排名按递减顺序。
ZSCORE key member:返回有序集合中,member的score。
返回值:member的score值。
127.0.0.1:6379> ZRANGE salary 0 -1 WITHSCORES
1) "Jim"
2) "1000"
3) "peter"
4) "12000"
127.0.0.1:6379> ZSCORE salary Jim
"1000"
ZUNIONSTORE destination numkey key[key ... ] [WEIGHTS weight...] [AGGREGATE SUM|| MIN || MAX]:计算给定的一个或多个集合的并集,并将该并集存储到destination中。
WEIGHTS 选项可以为每个有序集合分别指定一个乘法因子,指定后,集合每个成员在传递给聚合函数的时候,都会乘以该因子。
AGGREGATE 选项指定并集的聚合方式。SUM表示score的和,MIN表示将小者作为结果,MAX表示将大者作为结果。
返回值:保存到结果中的基数。
127.0.0.1:6379> ZADD pragrammer 2000 peter 3500 jack 5000 tom
(integer) 3
127.0.0.1:6379> ZRANGE manager 2000 herry 3500 marry 4000 bob
(error) ERR value is not an integer or out of range
127.0.0.1:6379> ZADD manager 2000 herry 3500 marry 4000 bob
(integer) 3
127.0.0.1:6379> ZUNIONSTORE salary 2 programmer manager weights 1 3
(integer) 3
127.0.0.1:6379> ZUNIONSTORE salary 2 pragrammer manager weights 1 3
(integer) 6
127.0.0.1:6379> ZRANGE salary 0 -1 WITHSCORES
1) "peter"
2) "2000"
3) "jack"
4) "3500"
5) "tom"
6) "5000"
7) "herry"
8) "6000"
9) "marry"
10) "10500"
11) "bob"
12) "12000"
ZINTERSTORE destination numkeys key [key ...] [WEIGHTS weight[weight ... ]] [AGGREGATE SUM|| MIN || MAX]:计算一个或多个有序集合的交集,并将该结果存储到结果集合中。
返回值:保存到结果集合中的基数。
127.0.0.1:6379> ZADD mid_test 70 lilei 70 hanmeimei 99.5 tom
(integer) 3
127.0.0.1:6379> ZADD fin_test 88 lilei 75 hanmeimie 99.5 tom
(integer) 3
127.0.0.1:6379> ZINTERSTORE sum_point 2 mid_test fin_test
(integer) 2
127.0.0.1:6379> ZRANGE sum_point 0 -1 WITHSCORES
1) "lilei"
2) "158"
3) "tom"
4) "199"
ZLEXCOUNT key min max:对于所有成员分数相同的集合,这个命令返回介于min max之间元素数量。
返回值:指定范围内元素的数量。
127.0.0.1:6379> ZADD myzset 0 a 0 b 0 c 0 d 0 e
(integer) 5
127.0.0.1:6379> ZADD myzset 0 f 0 g
(integer) 2
127.0.0.1:6379> ZLEXCOUNT myzset - +
(integer) 7
127.0.0.1:6379> ZLEXCOUNT myzset [b [f
(integer) 5
ZREMRANGEBYLEX key min max:对于一个所有成员score相同的集合,移除介于min max之间的元素。
返回值:被移除的元素的数量。
127.0.0.1:6379> ZREMRANGEBYLEX myzset [a [c
(integer) 3
127.0.0.1:6379> ZRANGE myzset 0 -1
1) "d"
2) "e"
3) "f"
4) "g"
127.0.0.1:6379>
主要参考:http://redisdoc.com/sorted_set/zremrangebylex.html
标签:
原文地址:http://blog.csdn.net/mergades/article/details/46610095