Na váš problém existuje jednoduché řešení:ZINTERSTORE
bude fungovat s SET
a ZSET
. Zkuste:
redis> sadd foo a
(integer) 1
redis> zadd bar 1 a
(integer) 1
redis> zadd bar 2 b
(integer) 1
redis> zinterstore baz 2 foo bar AGGREGATE MAX
(integer) 1
redis> zrange baz 0 -1 withscores
1) "a"
2) "1"
Upravit: Přidal jsem AGGREGATE MAX
výše, protože redis dá každému členu (netříděné) sady foo
výchozí skóre 1
a SUM
že bez ohledu na skóre, které má v (seřazené) sadě bar
.