reids学记笔记(六) 集合(sets)常用命令及操作

SET常用命令

Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。

Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。

集合中最大的成员数为 2^32 - 1 (4294967295, 每个集合可存储40多亿个成员)。

SADD key member1 [member2]

向集合添加一个或多个成员

SREM key member1 [member2]

移除集合中一个或多个成员

SCARD key

获取集合的成员数

SMEMBERS key

返回集合中的所有成员

SRANDMEMBER key [count]

返回集合中一个或多个随机数

SPOP key

移除并返回集合中的一个随机元素

SMOVE source destination member

将 member 元素从 source 集合移动到 destination 集合

SDIFF key1 [key2]

返回第一个集合与其他集合之间的差集。

SINTERSTORE destination key1 [key2]

返回给定所有集合的交集并存储在 destination 中

SUNION key1 [key2]

返回所有给定集合的并集

案例1

127.0.0.1:6379> FLUSHDB
OK
127.0.0.1:6379> SADD SET MAPREDUCE
(integer) 1
127.0.0.1:6379> SADD SET TOPOLOGY
(integer) 1
127.0.0.1:6379> SADD SET RDD
(integer) 1
127.0.0.1:6379> KEYS *
1) "SET"
127.0.0.1:6379> SADD SET RDD
(integer) 0
127.0.0.1:6379> SREM SET RDD
(integer) 1
127.0.0.1:6379> SMEMBERS SET
1) "TOPOLOGY"
2) "MAPREDUCE"

案例2

127.0.0.1:6379> SADD SET RDD
(integer) 1
127.0.0.1:6379> SADD SET DAG
(integer) 1
127.0.0.1:6379> SADD SET HDFS
(integer) 1
127.0.0.1:6379> SADD SET GFS
(integer) 1
127.0.0.1:6379> SADD SET DEEPLEARNING
(integer) 1
127.0.0.1:6379> SRANDMEMBER SET 2
1) "HDFS"
2) "GFS"
127.0.0.1:6379> SRANDMEMBER SET 2
1) "HDFS"
2) "GFS"
127.0.0.1:6379> SRANDMEMBER SET
"GFS"
127.0.0.1:6379> SRANDMEMBER SET
"DEEPLEARNING"
127.0.0.1:6379> SRANDMEMBER SET
"MAPREDUCE"
127.0.0.1:6379> SRANDMEMBER SET
"MAPREDUCE"
127.0.0.1:6379> SRANDMEMBER SET
"DAG"
127.0.0.1:6379> SRANDMEMBER SET
"RDD"
127.0.0.1:6379> SRANDMEMBER SET
"TOPOLOGY"
127.0.0.1:6379> SPOP SET
"DAG"
127.0.0.1:6379> SPOP SET
"GFS"
127.0.0.1:6379> SMEMBERS SET
1) "HDFS"
2) "MAPREDUCE"
3) "TOPOLOGY"
4) "RDD"
5) "DEEPLEARNING"
127.0.0.1:6379> SMOVE SET SET1 HDFS		# 将SET中的
(integer) 1
127.0.0.1:6379> SMEMBERS SET
1) "MAPREDUCE"
2) "TOPOLOGY"
3) "RDD"
4) "DEEPLEARNING"
127.0.0.1:6379> SMEMBERS SET1
1) "HDFS"

案例3

127.0.0.1:6379> SADD K1 V1
(integer) 1
127.0.0.1:6379> SADD K1 V2
(integer) 1
127.0.0.1:6379> SADD K1 V3
(integer) 1
127.0.0.1:6379> SADD K1 V4
(integer) 1
127.0.0.1:6379> SADD K2 V2
(integer) 1
127.0.0.1:6379> SADD K2 V3
(integer) 1
127.0.0.1:6379> SMEMBERS K1
1) "V4"
2) "V2"
3) "V3"
4) "V1"
127.0.0.1:6379> SMEMBERS K2
1) "V2"
2) "V3"
127.0.0.1:6379> SDIFF K1 K2
1) "V4"
2) "V1"
127.0.0.1:6379> SINTER K1 K2
1) "V2"
2) "V3"
127.0.0.1:6379> SUNION K1 K2
1) "V3"
2) "V1"
3) "V4"
4) "V2"

猜你喜欢

转载自blog.csdn.net/liutao43/article/details/110458133
今日推荐