Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Wie kann Redis nach zwei verschiedenen sortierten Sätzen sortieren?

Angenommen, dass article_id der Wert Ihrer Mitglieder ist und diese editor_id /day sind die Punktzahlen in der jeweiligen sortierten Menge und unter der Annahme jeder article_id ist in beiden vorhanden Bei sortierten Sätzen können Sie Folgendes tun:

ZINTERSTORE t 2 k1 k2 WEIGHTS 100 1 AGGREGATE SUM

Erklärung:

  • t ist ein temporärer Schlüssel, der das Ergebnis enthält
  • k1 ist der sortierte Satz, der die editor_id speichert
  • k2 ist der sortierte Satz, der den day speichert
  • das Gewicht 100 multipliziert editor_id um 100 (also um zwei Stellen nach rechts "verschoben")
  • die AGGREGATE SUM ergibt folgenden Score:editor_id * 100 + day

Hinweise:

  • Sie können ZUNIONSTORE verwenden stattdessen für das gleiche Ergebnis
  • Die Verwendung von Gewicht 100 geht von diesem day aus ist ein zweistelliger Wert