sql >> Databasteknik >  >> NoSQL >> Redis

Hur kan Redis sortera efter två olika sorterade uppsättningar?

Förutsatt att article_id är dina medlemmars värde och det editor_id /day är poängen i respektive sorterad uppsättning, och förutsatt att varje article_id finns i båda Sorterade uppsättningar kan du göra följande:

ZINTERSTORE t 2 k1 k2 WEIGHTS 100 1 AGGREGATE SUM

Förklaring:

  • t är en tillfällig nyckel som kommer att hålla resultatet
  • k1 är den sorterade uppsättningen som lagrar editor_id
  • k2 är den sorterade uppsättningen som lagrar day
  • vikten 100 multiplicerar editor_id med 100 (dvs. "skiftar" den två ställen åt höger)
  • den AGGREGATE SUM resulterar i följande poäng:editor_id * 100 + day

Anmärkningar:

  • du kan använda ZUNIONSTORE istället för samma resultat
  • användningen av vikt 100 förutsätter den day är ett tvåsiffrigt värde



  1. MongoDB Index Builds – Förhindrar användare från att utlösa nya byggnader

  2. Felsökning av problem

  3. Finns det något sätt att "snyggt" skriva ut MongoDB-skalutdata till en fil?

  4. MongoDB hel och partiell textsökning