0

Redis 集合操作:

SADD key1 "value1 包含 key1"

SADD key1 "value2 包含 key1"

SADD key1 "value3 包含 key1"

SMEMBERS 结果:1)“value2 包含 key1”2)“value3 包含 key1”3)“value1 包含 key1”

SREM key1 "value2 contains key1" --> 有效

现在我想从集合中删除“value2 contains key1”,而不传递整个值,例如“value2 contains key1”。只想发送“value2”

SREM 键 1“值 2”

有什么办法吗?还是有什么其他方法?

4

1 回答 1

0

无需将完整值(“value1:verylongmessage”)插入到 SET 中,您只需将值(“value1”)插入到集合“key1”中即可。

但是您应该使用另一种数据结构 Hash 来存储 value1 的全部内容:

hash['value1'] = "value1 : verylongmessage" (in Redis, you can use HSET?)

因此,如果要从 SET 中删除 value1,只需从 SET 和 HASH 中删除即可。

希望对你有帮助~~~

于 2013-04-17T03:36:41.787 回答