Redis常见数据类型四:Set
Set类型
新的存储需求:存储大量的数据,在查询方面提供更高的效率。
需要的存储结构:能够保存大量的数据,高效的内部存储机制,便于查询
与hash的存储结构完全相同,仅存储键,不存储值(nil),并且值不允许重复
Set类型数据的操作
基础操作
添加数据
格式:sadd key member member1 …
获取全部数据
格式:smembers key
删除数据
格式:srem key member member1 …
获取集合数据总量
格式:scard key
判断 member 元素是否是集合 key 的成员
格式:sismember key member
扩展操作
返回集合中一个或多个随机数
格式:srandmember key [count]
移除并返回集合中的一个随机元素
格式:spop key
返回给定所有集合的交集
格式:sinter key1 key2 key3...
返回所有给定集合的并集
格式:sunion key1 key2 key3...
返回第一个集合与其他集合之间的差异
格式:sdiff key1 key2 key3...
所有给定集合的交集存储在 destination 中
格式:sinterstore destination key key1 key2 key3...
所有给定集合的并集存储在 destination 中
格式:sunionstore destination key key1 key2 key3...
所有给定集合的差集存储在 destination 中
格式:sdiffstore destination key key1 key2 key3...
将 member 元素从 source 集合移动到 destination 集合
格式:smove source destination member
Set类型数据操作的注意事项
set 类型不允许数据重复,如果添加的数据在 set 中已经存在,将只保留一份
set 虽然与hash的存储结构相同,但是无法启用hash中存储值的空间
End!