91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Redis集合類型如何使用

發布時間:2021-08-10 18:04:48 來源:億速云 閱讀:202 作者:Leah 欄目:web開發

這期內容當中小編將會給大家帶來有關Redis集合類型如何使用,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

一、集合內操作

1.添加元素

sadd key member [member ...]
Redis集合類型如何使用

sadd命令也是有返回值的,它的返回值就是當前執行sadd命令成功添加元素的個數,因為set中不能保存重復元素,所以在執行:

sadd setkey c d

命令時,返回的是1,而不是2。因為元素c,已經成功保存到set中,不在繼續保存了,只能將d保存到set中。

2.刪除元素

srem key member [member ...]
Redis集合類型如何使用

srem命令和sadd命令一樣也是有返回值的,返回值就是當前刪除元素的個數。

3.計算元素個數

scard key
Redis集合類型如何使用

scard命令的時間復雜度為O(1),scard命令不會遍歷set中的所有元素,而是直接使用Redis中的內部變量。

4.判讀元素是否在集合中

sismember key member
Redis集合類型如何使用

sismember命令也有返回值,如果返回值為1則表示當前元素在當前set中,如果返回0則表示當前元素不在set中。

5.隨機從set中返回指定個數元素

srandmember key [count]
Redis集合類型如何使用

srandmember命令中有一個可選參數count,count參數指的是返回元素的個數,如果當前set中的元素個數小于count,則srandmember命令返回當前set中的所有元素,如果count參數等于0,則不返回任何數據,如果count參數小于0,則隨機返回當前count個數的元素,不管當前set中的元素個數為多少。

6.從集合中隨機彈出元素

spop key [count]

Redis集合類型如何使用

spop命令也是隨機從set中彈出元素,并且也支持count可選參數,但有一點和srandmember命令不同。spop命令在隨機彈出元素之后,會將彈出的元素從set中刪除,而srandmember命令則不同,只會隨機彈出元素,并不會將元素從set中刪除。

7.獲取所有元素

smembers key
Redis集合類型如何使用

smembers命令雖然能獲取當前set中所有的元素,但smembers命令返回元素的順序與sadd添加元素的順序不一定相同,這也就是前面提到過的保存在set中的元素是無序的。

二、集合間操作

1.集合的交集

sinter key [key ...]
Redis集合類型如何使用

2.集合的并集

sunion key [key ...]
Redis集合類型如何使用

3.集合的差集

sdiff key [key ...]
Redis集合類型如何使用

4.將集合的交集、并集、差集的結果保存

sinterstore destination key [key ...] sunionstore destination key [key ...] sdiffstore destination key [key ...]
Redis集合類型如何使用

為什么Redis要提供了sinterstore、sunionstore、sdiffstore命令來將集合的交集、并集、差集的結果保存起來呢?這是因為Redis在進行上述比較時,會比較耗費時間,所以為了提高性能可以將交集、并集、差集的結果提前保存時來,這樣在需要使用時,可以直接通過smembers命令獲取。

下面我們看一下set中相關命令的時間復雜度。

Redis集合類型如何使用

內部編碼

  • intset(整數集合):當集合中的元素都是整數,并且集合中的元素個數小于512個時,Redis會選用intset作為底層內部實現。

  • hashtable(哈希表):當條件不滿足上述時,Redis會采用hashtable作為底層實現。

備注:我們可以通過set-max-intset-entries參數來設置上述中的默認參數。

下面我們看一下具體的事例,來驗證我們上面提到的內部編碼。

Redis集合類型如何使用

1.當元素個數較少并且都是整數時,內部編碼為intset。

Redis集合類型如何使用

2.當元素不全是整數時,內部編碼為hashtable。

3.當元素個數超過512個時,內部編碼為hashtable。

Redis集合類型如何使用
Redis集合類型如何使用

上述就是小編為大家分享的Redis集合類型如何使用了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

辛集市| 龙井市| 丰台区| 巴里| 灌南县| 二手房| 台山市| 漠河县| 仁化县| 杂多县| 磐石市| 西丰县| 石台县| 孟州市| 永兴县| 册亨县| 江北区| 沐川县| 天柱县| 阳江市| 会昌县| 普兰店市| 鄂尔多斯市| 观塘区| 峨边| 定西市| 应用必备| 彝良县| 天长市| 体育| 德格县| 舟山市| 孟村| 郑州市| 中宁县| 吉首市| 杂多县| 绍兴市| 沅江市| 家居| 库伦旗|