Der er en simpel løsning på dit problem:ZINTERSTORE
vil fungere med et SET
og en ZSET
. Prøv:
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"
Rediger: Jeg tilføjede AGGREGATE MAX
ovenfor, da redis vil give hvert medlem af det (ikke-sorterede) sæt foo
en standardscore på 1
og SUM
det med hvilken score den har i det (sorterede) sæt bar
.