Redis set数据结构类型及操作方法详解
Set是通过hash table实现的无序集合
sadd添加元素需要注意的是不允许值中有重复的
sadd set名称 value
举例:
sadd myset "one"
sadd myset "two"
scard查看set元素的个数
scard set名称
举例:
scard myset
返回值为2
smembers查看set中的元素
smembers set名称
举例:
smembers myset
1.one
2.two
srem 删除名称为key的set中的元素
srem set名称 value
举例:
srem myset one
spop随机返回并删除名称为key的set一个元素
spop set名称
举例:
spop myset
sdiff判断两个set的差集
sdiff set名称1 set名称2
是用set名称1减去set名称2的
例如:
myset1:
1.one
2.two
myset2:
1.two
2.three
那么 sdiff myset1 myset2
则返回one
sdiffstore将两个set的差集放置到第三个set中
sdiffstore myset1 myset2 myset3
sinter返回所有集合的交际
sinter set1 set2 set3 ...
如上例:
返回two
sinterstore如同sdiffstore,但表示将交集放入第三集合
sunion表示所有集合的并集
sunion set1 set2 ...
smove表示第一个集合数据删除,并放到第二个集合中
smove set1 set2 【value】
如上例:
smove set1 set2 one
返回 one two three
sismember 判断元素是否是集合中的元素
sismember set名称 value
举例:
sismember myset one
返回1
simember myset three
返回0
srandmember随机返回集合中的一个元素,但不删除元素
srandmember myset
返回值为随机元素值