Redis 集合(Set)

2022-06-16 15:29 更新

Redis的Set是string類型的無(wú)序集合。集合成員是唯一的,這就意味著集合中不能出現(xiàn)重復(fù)的數(shù)據(jù)。

Redis 中 集合是通過(guò)哈希表實(shí)現(xiàn)的,所以添加,刪除,查找的復(fù)雜度都是O(1)。

集合中最大的成員數(shù)為 232 -1(4294967295, 每個(gè)集合可存儲(chǔ)40多億個(gè)成員)。

實(shí)例

redis 127.0.0.1:6379> SADD w3ckey redis
(integer) 1
redis 127.0.0.1:6379> SADD w3ckey mongodb
(integer) 1
redis 127.0.0.1:6379> SADD w3ckey mysql
(integer) 1
redis 127.0.0.1:6379> SADD w3ckey mysql
(integer) 0
redis 127.0.0.1:6379> SMEMBERS w3ckey

1) "mysql"
2) "mongodb"
3) "redis"

在以上實(shí)例中我們通過(guò) SADD 命令向名為 w3ckey 的集合插入的三個(gè)元素。


Redis 集合命令

下表列出了 Redis 集合基本命令:

序號(hào) 命令及描述
1 SADD key member1 [member2]
向集合添加一個(gè)或多個(gè)成員
2 SCARD key
獲取集合的成員數(shù)
3 SDIFF key1 [key2]
返回給定所有集合的差集
4 SDIFFSTORE destination key1 [key2]
返回給定所有集合的差集并存儲(chǔ)在 destination 中
5 SINTER key1 [key2]
返回給定所有集合的交集
6 SINTERSTORE destination key1 [key2]
返回給定所有集合的交集并存儲(chǔ)在 destination 中
7 SISMEMBER key member
判斷 member 元素是否是集合 key 的成員
8 SMEMBERS key
返回集合中的所有成員
9 SMOVE source destination member
將 member 元素從 source 集合移動(dòng)到 destination 集合
10 SPOP key
移除并返回集合中的一個(gè)隨機(jī)元素
11 SRANDMEMBER key [count]
返回集合中一個(gè)或多個(gè)隨機(jī)數(shù)
12 SREM key member1 [member2]
移除集合中一個(gè)或多個(gè)成員
13 SUNION key1 [key2]
返回所有給定集合的并集
14 SUNIONSTORE destination key1 [key2]
所有給定集合的并集存儲(chǔ)在 destination 集合中
15 SSCAN key cursor [MATCH pattern] [COUNT count]
迭代集合中的元素
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)