Redis之Set

来源:互联网 发布:csol能淘宝买武器么 编辑:程序博客网 时间:2024/06/15 23:39

Set

Redis中的set类型也是一种无序集合,集合中的元素没有先后顺序,而且具有确定性、唯一性的特点。相比于我们前面介绍的list类型,set支持更加丰富的操作,比如求交、并、差集等。

Set相关命令

sadd命令

sadd命令用来往集合中添加一个或多个元素,但是如果该元素已经在集合中则忽略之。操作成功后返回新成功添加到集合中的元素的数量。具体格式如下:

sadd key1 value1 value2...

smembers命令

smembers用来获取集合中所有的元素。具体格式如下:
smembers key

srem命令

srem命令用来删除结合中的一个或多个元素。如果该元素不在指定的集合中,则直接忽略。该命令返回值为从集合中删除的元素个数(不包括不存在的元素)。具体格式如下:

srem key value...

spop命令

spop命令的作用比较“有趣”,该命令可以随机移除并返回集合中的一个元素。具体格式如下:

spop key

srandmember命令

srandmember命令随机返回集合中的一个元素(注意与spop命令的区别)。具体格式如下:

srandmember key
##sismember命令

sismember命令用来判断集合中某个元素是否存在,如果存在,返回整数1,否则返回0。具体格式如下:

sismember key value

scard命令

scard命令返回集合中元素的个数,如果给集合不存在,则返回0。具体格式如下:

scard key

sinter命令

sinter命令用来求指定所有集合的交集。具体格式如下:

sinter key1 key2 key3...

sunion命令

sunion命令用来求指定所有集合的并集。具体格式如下:

sunion key1 key2...

sdiff命令

sdiff命令用来求一个集合与给定集合的差集。具体格式如下:

sdiff key1 key2