参考链接:http://doc.redisfans.com/set/index.html
虽然set和list很相似但还是有一些差别的,如set中的顺序没有先后之分,所以不像list一样可以在首尾增删数据,set会用hash表来保持字符串的唯一性。
sadd key member[member...]
将一个或多个member元素加入到集合key中,若member已存在那么会忽略此元素,例:sadd sk v1 v2 v3 v1。
scard key
返回集合key中元素的个数;例:scard sk。
sdiff key[key...]
获取集合的差集,若key为1个则返回集合的全部成员;例:sk1中是元素v1、v2、v3、v4,sk2中是v2、v4、v5那么sdiff sk sk1中返回的是v1、v3。
sdiffstore destination key[key...]
和sdiff类似但sdiffstore会将差集存入到目标库中;例:sdiffstore sk2 sk sk1。
sinter key[key...]
获取集合的交集,当key不存在时会被视为空集,若给定的集合中有一个空集时,结果也为空集;例:sinter sk1 sk2。
sinterstore destination key[key...]
和sinter类似但sinterstore会将交集存入到目标库中;例:sinterstore sk_d sk1 sk2。
sismember key member
判断member在key中是否已存在返回0或1;例:sismember sk v1。
smembers key
列出集合key中的所有成员;例:smembers sk。
smove source destination member
将元素member从source移动到destination;若member在destination中已存在只会删除source中的数据,若source或member不存在会返回0,若destination不存在则会创建后再进行操作,例:smove sk1 sk2 v1。
spop key
移除并返回集合中的一个随机元素,当key不存在时返回NULL;例:spop sk。
srandmember key[count]
返回count个随机元素,count默认为1,若count超出集合长度则返回整个集合,若count为0则返回空,若count为负数则返回绝对值个元素且元素可能会重复。
srem key member[member]
移除key中的一个或多个member元素,不存在的member会被忽略;例:srem sk v1 v2 v3。
sunion key[key...]
返回集合的并集,不存在的key会被当做空集处理;例:sunion sk1 sk2 sk3。
sunionstore destination key[key...]
和sunion类似,但是sunionstore会将数据保存到destination中,而不是简单的返回集合;例:sunionstore sk sk1 sk2。
sscan key cursor[match pattern][count count]
增量迭代集合,参见scan;例:sscan sk1 0 match *5 count 1。