相關文章redis
Redis 的命令詳解 - Key 篇
Redis 的命令詳解 - String 篇
Redis 的命令詳解 - Hash 篇
Redis 的命令詳解 - List 篇bash
未完待續!!!post
跟 SET 相關的命令一共有 15 種,這裏只介紹經常使用的,其餘請參考官網spa
起始版本 : 1.0.0
時間複雜度 : O(N),N爲要添加的成員的個數code
若是key不存在,則在添加前先建立一個set,若是指定成員在set中已存在,該成員將被忽略。get
SADD key member1 [member2 ...]
io
已添加到集合中的成員數量,不包括已經存在的成員,若是key對應的value不是 set 類型,返回錯誤。class
redis 版本 >= 2.4 時,該命令能夠接受多個member參數List
起始版本 : 1.0.0
時間複雜度 : O(N),N爲要刪除的成員的個數語法
若是指定成員在set中不存在,則忽略。
SREM key member1 [member2 ...]
刪除成員的數量。若是key不存在,則視爲空集,返回 0。
起始版本 : 1.0.0
時間複雜度 : O(1)
SCARD key
set 中的成員的數量,key 不存在時,返回0
起始版本 : 1.0.0
時間複雜度 : O(1)
SISMEMBER key member
起始版本 : 1.0.0
時間複雜度 : O(N),其中N是集合中成員的數量
SMEMBERS key
集合中的全部成員
起始版本 : 1.0.0
時間複雜度 : O(1)
將成員從源set移動到目標set,此操做是原子性的。
若是目標set已存在指定的元素,則僅將指定元素從源set中刪除。
SMOVE 源key 目標key member
起始版本 : 1.0.0
時間複雜度 : O(N),其中N是全部給定集合中元素的總數。
求第一個集合與後面全部集合之間的差集。
例如
key1 = {a,b,c,d}
key2 = {c}
key3 = {a,c,e}
複製代碼
則,SDIFF key1 key2 key3 = {b,d}
,簡單理解就是隻保留第一個集合中,其餘集合沒有的成員
若是 key 不存在,則認爲是空集。
SDIFF key [otherKey ...]
結果集的全部成員
起始版本 : 1.0.0
時間複雜度 : O(N),其中N是全部給定集合中元素的總數。
求第一個集合與後面全部集合之間的差集,並將它保存到目標集合中。若是目標集合已經存在,則將其覆蓋。
SDIFFSTORE 目標key key [otherKey ...]
結果集中成員的數量
起始版本 : 1.0.0
時間複雜度 : 最壞的狀況 O(N * M),其中N是最小集合的成員個數,M是集合的個數。
求全部給定集合的交集
例如,有
key1 = {a,b,c,d}
key2 = {c}
key3 = {a,c,e}
複製代碼
則SINTER key1 key2 key3 = {c}
,即全部集合中都有的成員
不存在的 key 被認爲是空集。若是其中一個 key 爲空集,則結果集也爲空集(由於與空集的交集都是空集)
SINTER key [otherKey ...]
當只設置一個key時,返回該key的全部成員,此時至關於
SMEMBERS key
命令
結果集的全部成員。
起始版本 : 1.0.0
時間複雜度 : 最壞的狀況 O(N * M),其中N是最小集合的成員個數,M是集合的個數。
求全部給定集合的交集,並將它保存到目標集合中。若是目標集合已經存在,則將其覆蓋。
不存在的 key 被認爲是空集。若是其中一個 key 爲空集,則結果集也爲空集
SINTERSTORE 目標key key [otherKey ...]
結果集中成員的數量
起始版本 : 1.0.0
時間複雜度 : O(N),其中N是全部給定集合中元素的總數
求全部給定集合的並集,不存在的key被認爲是空集。
SUNION key [otherKey ...]
結果集中的全部成員
起始版本 : 1.0.0
時間複雜度 : O(N),其中N是全部給定集合中元素的總數
將全部給定集合的並集存儲到目標集合中,不存在的key被認爲是空集,若是目標集合已存在,則覆蓋。
SUNIONSTORE 目標key key [otherKey ...]
結果集中成員的數量
起始版本 : 1.0.0
時間複雜度 : O(1)
隨機刪除並返回指定個數的成員
SPOP key [count]
redis 3.2 及以上版本才能夠指定 count 參數
隨機刪除成員
起始版本 : 1.0.0
時間複雜度 : O(N),其中N爲要返回成員的個數
redis 2.6 及以上版本才能夠指定 count 參數
不指定 count 時,隨機返回一個成員
指定 count 時
SRANDMEMBER key [count]
返回的成員