首页 > 代码库 > Redis 学习笔记(七) 基本命令:Set操作

Redis 学习笔记(七) 基本命令:Set操作

参考链接: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。

Redis 学习笔记(七) 基本命令:Set操作