如何使用redis返回所有设置对象?

时间:2016-02-20 23:10:05

标签: redis

在redis中,是否有一种简单的方法可以询问“对象出现在哪些集合中?”例如,在下面的代码中,我想知道如何返回出现'c'集?

HMSET cset_details:1 name 'set 1' description 'my first set' date 'today'
HMSET cset_details:2 name 'set 2' description 'my second set' date 'today'
HMSET cset_details:2 name 'set 3' description 'my third set' date 'today'
SADD cset_members:1 a b c d
SADD cset_members:2  c d e
SADD cset_members:3 d e f g

我不清楚如何使用SISMEMBER查询所有可用的集合。

由于

伊恩

1 个答案:

答案 0 :(得分:1)

SISMEMBERhttp://redis.io/commands/sismember)用于测试某个值是否为某个集合的成员。如果您要测试多个集合,则需要多次调用SISMEMBER(使用MULTI/EXEC,您可以一次性发送所有成员测试)。返回值“1”表示该项目在集合中,“0”表示未找到该项:

127.0.0.1:6379[1]> SADD cset_members:1 a b c d
(integer) 4
127.0.0.1:6379[1]> SADD cset_members:2 c d e
(integer) 3
127.0.0.1:6379[1]> SADD cset_members:3 d e f g
(integer) 4
127.0.0.1:6379[1]> SISMEMBER cset_members:1 c
(integer) 1
127.0.0.1:6379[1]> SISMEMBER cset_members:2 c
(integer) 1
127.0.0.1:6379[1]> SISMEMBER cset_members:3 c
(integer) 0
127.0.0.1:6379[1]>