Suche…


Einführung

Redis unterstützt einen Satzdatentyp analog zu mathematischen Sätzen zur Modellierung von Daten in der Datenbank. Mengen sind ein zusammengesetzter Datentyp, der aus einer Gruppe eindeutiger, nicht geordneter Mitglieder besteht. Sets unterstützen das Hinzufügen und Entfernen von Elementen, Größenoperationen sowie Kombinationsoperationen, bei denen zwei Sets erforderlich sind und ein dritter Set generiert wird. Sets in Redis ähneln Sets in den meisten Programmiersprachen.

Syntax

  • SADD-Schlüsselmitglied [Mitglied ...]
  • SISMEMBER-Schlüsselmitglied
  • SCARD-Taste
  • SADD-Schlüsselmitglied [Mitglied ...]

Bemerkungen

Die vollständige Dokumentation zum Redis Set-Datentyp finden Sie bei Redis.io

Größe eines Sets

Die Größe eines Sets kann mit dem SCARD-Befehl bestimmt werden. SCARD gibt die Kardinalität eines Sets oder die Anzahl der Mitglieder des Sets zurück. Wenn ich zum Beispiel ein Redis-Set my_set in der Datenbank gespeichert hätte, das so aussah (Apple, Orange, Banana), könnte ich die Größe mit folgendem Code ermitteln:

SCARD my_set

Bei meinem Beispielsatz würde dies 3 zurückgeben. Wenn der Benutzer einen SCARD-Befehl für eine nicht vorhandene Taste ausführt, gibt Redis 0 zurück.

Elemente zu einem Set hinzufügen

Der grundlegende Redis-Befehl zum Hinzufügen eines Elements zu einer Gruppe ist SADD. Es nimmt einen Schlüssel und ein oder mehrere Mitglieder und fügt sie dem Satz hinzu, der unter dem angegebenen Schlüssel gespeichert ist.

Nehmen wir zum Beispiel an, ich wollte ein Set mit den Gegenständen Apfel, Birne und Banane erstellen. Ich könnte eines der folgenden ausführen:

SADD fruit apple
SADD fruit pear
SADD fruit banana

oder

SADD fruit apple pear banana

Nach der Ausführung bekomme ich das Set mit 3 Gegenständen.

Der Versuch, ein Element hinzuzufügen, das sich bereits im Set befindet, hat keine Auswirkungen. Wenn ich mein Obstset mit dem obigen Code eingerichtet habe, versuche ich erneut, Apfel hinzuzufügen:

SADD fruit apple

Redis versucht, dem Obstsatz einen Apfel hinzuzufügen, aber da er bereits im Satz ist, ändert sich nichts.

Das Ergebnis des SADD-Befehls ist immer die Anzahl der Elemente, die einem Satz hinzugefügt werden. Wenn Sie versuchen, Apfel erneut hinzuzufügen, wird das Ergebnis 0 zurückgegeben.

Mitgliederelemente in Redis unterscheiden zwischen Groß- und Kleinschreibung, sodass Apple und Apple als zwei separate Elemente behandelt werden.

Prüfung auf Mitgliedschaft

Redis stellt den Befehl SISMEMBER zur Verfügung, um zu testen, ob ein bestimmter Artikel bereits Mitglied einer Gruppe ist. Mit dem Befehl SISMEMBER kann ich testen und sehen, ob Apfel bereits Mitglied meines Obstsatzes ist.

Wenn ich mein Fruchtset aus dem vorherigen Beispiel konstruiere, kann ich anhand des folgenden Tests prüfen, ob es Apfel enthält.

SISMEMBER fruit apple

SISMEMBER gibt eine 1 zurück, da der Artikel bereits vorhanden ist.

Wenn ich versucht habe zu sehen, ob der Hund ein Mitglied meiner Obstgruppe ist:

SISMEMBER fruit dog

Redis gibt eine 0 zurück, da der Hund nicht im Obstsatz ist.

Wenn ein Benutzer versucht, den Befehl SISMEMBER mit einem nicht vorhandenen Schlüssel zu verwenden, gibt Redis eine 0 zurück, die keine Mitgliedschaft anzeigt. Wenn Sie jedoch SISMEMBER mit einem Schlüssel verwenden, der bereits einen nicht festgelegten Datentyp enthält, gibt Redis einen Fehler zurück.



Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow