redis 第 7 篇 Redis数据类型----Set

集合类型

集合类型:无序、不可重复

列表类型:有序、可重复

 

命令

增加/删除元素

语法:SADD key member [member ...]

127.0.0.1:6379> sadd set a b c

(integer) 3

127.0.0.1:6379> sadd set a

(integer) 0

 

语法:SREM key member [member ...]

127.0.0.1:6379> srem set c d

(integer) 1

 

 

获得集合中的所有元素

语法:SMEMBERS key

127.0.0.1:6379> smembers set

1) "b"

2) "a”

 

判断元素是否在集合中

语法:SISMEMBER key member

127.0.0.1:6379> sismember set a

(integer) 1

127.0.0.1:6379> sismember set h

(integer) 0

 

运算命令

集合的差集运算 A-B

属于A并且不属于B的元素构成的集合。

语法:SDIFF key [key ...]

127.0.0.1:6379> sadd setA 1 2 3

(integer) 3

127.0.0.1:6379> sadd setB 2 3 4

(integer) 3

127.0.0.1:6379> sdiff setA setB

1) "1"

127.0.0.1:6379> sdiff setB setA

1) "4"

 

集合的交集运算 A ∩ B

属于A且属于B的元素构成的集合。

语法:SINTER key [key ...]

127.0.0.1:6379> sinter setA setB

1) "2"

2) "3"

 

集合的并集运算 A ∪ B

属于A或者属于B的元素构成的集合

 

语法:SUNION key [key ...]

127.0.0.1:6379> sunion setA setB

1) "1"

2) "2"

3) "3"

4) "4"

 

其它命令

获得集合中元素的个数

语法:SCARD key

127.0.0.1:6379> smembers setA

1) "1"

2) "2"

3) "3"

127.0.0.1:6379> scard setA

(integer) 3

 

从集合中弹出一个元素

注意:由于集合是无序的,所有SPOP命令会从集合中随机选择一个元素弹出

 

语法:SPOP key

127.0.0.1:6379> spop setA

"1“

 

猜你喜欢

转载自blog.csdn.net/qq_35524586/article/details/84098545