sql >> Databáze >  >> NoSQL >> Redis

Redis:Jak protnout normální množinu se setříděnou množinou?

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 .




  1. Seskupit MongoDB podle vnitřních prvků pole

  2. Aggregate $lookup nevrací prvky původní pořadí pole

  3. Online zálohy Apache HBase s CopyTable

  4. SocketTimeout s otevřeným připojením v MongoDB