Redis学习笔记之Redis 集合SET(七)
特点
Set集合中不允许出现重复的元素。Set可包含的最大元素数量是4294967295。可以进行集合的运算:差集、交集、并集。
常用api
sadd key value1 value2 ...
【格式】sadd key value1 value2 ...
【作用】将value添加到set集合中
例如:
$: sadd set01 1 2 3 4 5 1 3 4 # set集合的特点是不能重复。请问现在set01中有几个成员?
scard key
【格式】scard key
【作用】查询set集合的元素个数
例如:
$: sadd set01 1 2 3 4 5 1 3 5
$: scard set01
smembers key
【格式】smembers key
【作用】查询set集合中的所有成员
例如:
$: sadd set01 1 2 3 4 5 1 3 5
$: smembers set01
$: scard set01
sismember key value
【格式】sismember key value
【作用】查询set集合中是否包含该成员
例如:
$: sadd set01 1 2 3 4 5 1 3 5
$: smembers set01
$: sismember set01 5
$: sismember set01 7
srem key member
【格式】srem key member
【作用】删除集合中某个成员
例如:
$: sadd set01 1 2 3 4 5
$: srem set01 3 #删除成员
$: del set01 #删除集合
srandmember key num
【格式】srandmember key num
【作用】从集合中随机抽取num个成员
例如:
$: sadd set01 1 2 3 4 5 6 7 8 9
$: srandmember set01 3 #随机从set01中抽取3个成员
spop key
【格式】spop key
【作用】移除并返回集合中的一个随机元素
例如:
$: sadd set01 1 2 3 4 5 6
$: spop set01 #移除并返回集合中的一个随机元素
smove key1 key2 member
【格式】smove key1 key2 member
【作用】把key1中的成员member移动到key2中
例如:
$: sadd set01 1 2 3
$: sadd set02 4 5 6
$: smove set01 set02 1
sdiff key1 key2
【格式】sdiff key1 key2
【作用】在第一个里面而不在后面任何一个set里面的项
例如:
$: sadd set01 1 2 3
$: sadd set02 3 4 5
$: sdiff set01 set02 # 返回1 2
$: sdiff set02 set01 # 返回4 5
sinter key1 key2
【格式】sinter key1 key2
【作用】交集,返回所有key都有的成员
例如:
$: sadd set01 1 2 3
$: sadd set02 3 4 5
$: sinter set01 set02 # 返回 3
sunion key1 key2
【格式】sunion key1 key2
【作用】并集,把所以key中的成员合并到一起
例如:
$: sadd set01 1 2 3
$: sadd set02 4 5 6
$: sadd set03 6 7 8
$: sunion set01 set02 set03 #返回 1 2 3 4 5 6 7 8