redis的資料結構 儲存set

2021-09-18 05:38:17 字數 1624 閱讀 8221

在redis中,我們可以將set型別看作為沒有排序的字元集合,和list型別一樣,我 們也可以在該型別的資料值上執行新增、刪除或判斷某一元素是否存在等操作。需要 說明的是,這些操作的時間是常量時間。set可包含的最大元素數是4294967295。

和list型別不同的是,set集合中不允許出現重複的元素。和list型別相比,set類 型在功能上還存在著乙個非常重要的特性,即在伺服器端完成多個sets之間的聚合計 算操作,如unions、intersections和differences。由於這些操作均在服務端完成, 因此效率極高,而且也節省了大量的網路io開銷

● sadd key values[value1 value2...]:向set中新增資料,如果key的值已有則不會重複新增

● srem key members[member1 member2...]:刪除set中指定的成員

● smembers key:獲取set中所有元素

● sismember key member:判斷引數中指定的成員是否在該set中,1表示存在,0表示不存在或該key本身就不存在。(無論集合中有多少元素都可以極速的返回結果)

● sdiff key1 key2...:返回key1與key2中相差的成員,而且與key的順序有關,幾返回差值。

● sinter key1 key2 key3...:返回交集

● sunion key1 key2 key3...:返回並集

● scard key:獲取set中成員數量

● srandmember key:隨機返回set中的乙個成員

● sdiffstore destination key1 key2...:將key1、key2相差的成員儲存在destination上

● sinterstore destination key[key...]:將返回的交集儲存在destination上

● sunioustore destination key[key...]:將返回的並集儲存在destination上

Redis 資料結構之set

集合set set 集合是無序且不可重複的,set 是通過 hashtable 實現的,新增刪除和查詢的複雜度都是o 1 效率很高。它最大的優勢在於可以進行交集 並集 差集操作。set 集合中最大元素數量是 4294967295。sadd 新增元素 重複元素不再新增 127.0.0.1 6379 s...

Redis 資料結構 集合(set)(五)

集合 set 型別也是用來儲存多個的字串元素,但和列表型別不一樣的是,集合中不允許有重複的元素。ps,如果重複了,乙個集合下如何區分那個元素是那個元素呢?並且集合中的元素是無序的,不能通過索引下標獲取元素。乙個集合最多可以儲存2 32 1 個元素。redis除了支援集合的增刪改查,同時還支援多個集合...

Redis資料結構詳解之Set(三)

在redis中,set和list都是字串序列,非常相似,不同之處在於set是用雜湊表來保持字串的唯一性,沒有先後順序,不像list一樣,可以在首尾增刪資料。但是set也有自己的相應處理命令來完成對自己的操作。下面我們來看下set的命令怎麼使用。redis中set列表的新增命令sadd,key值相同下...