sql >> Databasteknik >  >> NoSQL >> Redis

Redis:Hur skär man en normal uppsättning med en sorterad uppsättning?

Det finns en enkel lösning på ditt problem:ZINTERSTORE kommer att fungera med en SET och en ZSET . Försök:

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"

Redigera: Jag lade till AGGREGATE MAX ovan, eftersom redis kommer att ge varje medlem av den (icke-sorterade) uppsättningen foo en standardpoäng på 1 och SUM det med vilken poäng den har i den (sorterade) uppsättningen bar .




  1. MongoDB:Hur tar man reda på om ett arrayfält innehåller ett element?

  2. Hur man inspekterar och avbryter selleriuppgifter efter uppgiftsnamn

  3. Infoga en lista i en annan lista i Redis

  4. MongoDB BSON-codec används inte vid kodning av objekt