Redis集合是唯一字串的無序集合。 唯一值表示集合中不允許鍵中有重複的資料。
在Redis中設定新增,刪除和測試成員的存在(恆定時間O(1),而不考慮集合中包含的元素數量)。列表的最大長度為2^32 - 1
個元素(即4294967295,每組集合超過40億個元素)。
redis 127.0.0.1:6379> SADD myset "redis"
(integer) 1
redis 127.0.0.1:6379> SADD myset "mongodb"
(integer) 1
redis 127.0.0.1:6379> SADD myset "mysql"
(integer) 1
redis 127.0.0.1:6379> SADD myset "mysql"
(integer) 0
redis 127.0.0.1:6379> SMEMBERS "myset"
1) "mysql"
2) "mongodb"
3) "redis"
在上面的範例中,通過命令SADD
將三個值插入到名稱為「myset
」的Redis集合中。
下表列出了與集合相關的一些基本命令。
序號 | 命令 | 說明 |
---|---|---|
1 | SADD key member1 [member2] | 將一個或多個成員新增到集合 |
2 | SCARD key | 獲取集合中的成員數 |
3 | SDIFF key1 [key2] | 減去多個集合 |
4 | SDIFFSTORE destination key1 [key2] | 減去多個集並將結果集儲存在鍵中 |
5 | SINTER key1 [key2] | 相交多個集合 |
6 | SINTERSTORE destination key1 [key2] | 交叉多個集合並將結果集儲存在鍵中 |
7 | SISMEMBER key member | 判斷確定給定值是否是集合的成員 |
8 | SMOVE source destination member | 將成員從一個集合移動到另一個集合 |
9 | SPOP key | 從集合中刪除並返回隨機成員 |
10 | SRANDMEMBER key [count] | 從集合中獲取一個或多個隨機成員 |
11 | SREM key member1 [member2] | 從集合中刪除一個或多個成員 |
12 | SUNION key1 [key2] | 新增多個集合 |
13 | SUNIONSTORE destination key1 [key2] | 新增多個集並將結果集儲存在鍵中 |
14 | SSCAN key cursor [MATCH pattern] [COUNT count] | 遞增地疊代集合中的元素 |