一、集合類型的常用操作是向集合中加入或刪除元素、判斷某個元素是否存在。
1.增加/刪除元素
SADD/SREM key member [member ...]
redis 127.0.0.1:6379> sadd letters a
(integer) 1
redis 127.0.0.1:6379> sadd letters a b c
(integer) 2 // 因爲'a'已經存在,所以實際上只加入了兩個元素。
SADD用來向集合中增加一個或多個元素,如果鍵不存在則會自動創建。
redis 127.0.0.1:6379> SREM letters c d //srem刪除一個或多個元素,'d'不存在,只刪除了一個元素。返回爲刪除成功的個數。
(integer) 1
2.獲得集合中所有的元素
SMEMBERS key ;;會返回集合中的所有元素
redis 127.0.0.1:6379> SMEMBERS letters
1) "a"
2) "b"
3.判斷元素是否在集合中
SISMEMBER key member ;;當值存在時SISMEMBER返回1,當值不存在或者鍵不存在時返回0.
redis 127.0.0.1:6379> SISMEMBER letters a
(integer) 1
redis 127.0.0.1:6379> SISMEMBER letters d
(integer) 0
4.集合間運算
SDIFF key [key...] //集合間的差
SINTER key [key...] //集合間的交集
SUNION key [key...] //集合間的並集
5.獲得集合中元素個數
SCARD key
redis 127.0.0.1:6379> SMEMBERS letters
1) "a"
2) "b"
redis 127.0.0.1:6379> SCARD letters
(integer) 2 //集合中元素個數爲2個。
6.進行集合運算並將結果存儲
SDIFFSTORE destination key [key ...]
SINTERSTOR destination key [key ...]
SUNIONSTROE destination key [key ...]
SDIFF命令只會顯示兩個交集差的結果,但是不保存。而SDIFFSTORE會將差的結果進行保存。
7.隨機獲得集合中的元素
SRANDMEMBER key [count]
redis 127.0.0.1:6379> SRANDMEMBER letters
"a"
隨機從集合中獲取一個元素。
二、有序集合