Có một giải pháp đơn giản cho vấn đề của bạn:ZINTERSTORE
sẽ hoạt động với SET
và một ZSET
. Hãy thử:
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"
Chỉnh sửa: Tôi đã thêm AGGREGATE MAX
ở trên, vì redis sẽ cung cấp cho từng thành viên của tập hợp (không được sắp xếp) foo
điểm mặc định là 1
và SUM
với bất kỳ số điểm nào nó có trong bar
tập hợp (đã sắp xếp) .