欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Redis集合類型如何使用

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)redis集合類型如何使用,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)建站主要從事網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)阿克陶,十余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220

一、集合內(nèi)操作

1.添加元素

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

sadd命令也是有返回值的,它的返回值就是當(dāng)前執(zhí)行sadd命令成功添加元素的個(gè)數(shù),因?yàn)閟et中不能保存重復(fù)元素,所以在執(zhí)行:

sadd setkey c d

命令時(shí),返回的是1,而不是2。因?yàn)樵豤,已經(jīng)成功保存到set中,不在繼續(xù)保存了,只能將d保存到set中。

2.刪除元素

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

srem命令和sadd命令一樣也是有返回值的,返回值就是當(dāng)前刪除元素的個(gè)數(shù)。

3.計(jì)算元素個(gè)數(shù)

scard key
Redis集合類型如何使用

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

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

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

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

5.隨機(jī)從set中返回指定個(gè)數(shù)元素

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

srandmember命令中有一個(gè)可選參數(shù)count,count參數(shù)指的是返回元素的個(gè)數(shù),如果當(dāng)前set中的元素個(gè)數(shù)小于count,則srandmember命令返回當(dāng)前set中的所有元素,如果count參數(shù)等于0,則不返回任何數(shù)據(jù),如果count參數(shù)小于0,則隨機(jī)返回當(dāng)前count個(gè)數(shù)的元素,不管當(dāng)前set中的元素個(gè)數(shù)為多少。

6.從集合中隨機(jī)彈出元素

spop key [count]

Redis集合類型如何使用

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

7.獲取所有元素

smembers key
Redis集合類型如何使用

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

二、集合間操作

1.集合的交集

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

2.集合的并集

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

3.集合的差集

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

4.將集合的交集、并集、差集的結(jié)果保存

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

為什么Redis要提供了sinterstore、sunionstore、sdiffstore命令來將集合的交集、并集、差集的結(jié)果保存起來呢?這是因?yàn)镽edis在進(jìn)行上述比較時(shí),會(huì)比較耗費(fèi)時(shí)間,所以為了提高性能可以將交集、并集、差集的結(jié)果提前保存時(shí)來,這樣在需要使用時(shí),可以直接通過smembers命令獲取。

下面我們看一下set中相關(guān)命令的時(shí)間復(fù)雜度。

Redis集合類型如何使用

內(nèi)部編碼

  • intset(整數(shù)集合):當(dāng)集合中的元素都是整數(shù),并且集合中的元素個(gè)數(shù)小于512個(gè)時(shí),Redis會(huì)選用intset作為底層內(nèi)部實(shí)現(xiàn)。

  • hashtable(哈希表):當(dāng)條件不滿足上述時(shí),Redis會(huì)采用hashtable作為底層實(shí)現(xiàn)。

備注:我們可以通過set-max-intset-entries參數(shù)來設(shè)置上述中的默認(rèn)參數(shù)。

下面我們看一下具體的事例,來驗(yàn)證我們上面提到的內(nèi)部編碼。

Redis集合類型如何使用

1.當(dāng)元素個(gè)數(shù)較少并且都是整數(shù)時(shí),內(nèi)部編碼為intset。

Redis集合類型如何使用

2.當(dāng)元素不全是整數(shù)時(shí),內(nèi)部編碼為hashtable。

3.當(dāng)元素個(gè)數(shù)超過512個(gè)時(shí),內(nèi)部編碼為hashtable。

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

上述就是小編為大家分享的Redis集合類型如何使用了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

文章名稱:Redis集合類型如何使用
鏈接URL:http://aaarwkj.com/article32/iipdsc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)軟件開發(fā)、網(wǎng)站設(shè)計(jì)、虛擬主機(jī)、網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
亚洲人色中文字幕天堂| 亚洲国产精品高清久久| 高清国产国产精品三级国产av| 亚洲日本中文字幕免费观看| 要爽死国产一区在线播放| 国产性做爰片免费网站| 欧美亚洲综合日韩精品区| 日韩精品中文女同在线播放| 亚洲色图熟女激情另类| 国产白丝扒开做爽爽爽网站| 日韩精品中文字幕欧美激情 | 国产成人国产三级国产精品| 日韩精品国产一区二区在线| 高潮少妇水多毛多av| 日本东京热在线免费观看| 麻豆成人三级电影在线| 国产精品一区二区夜夜夜| 亚洲国产成人不卡高清麻豆| 亚洲和欧洲一码二码区视频| 国产福利91精品一区二区三| 精品国产第一区二区三区| 亚洲天堂日韩欧美在线一区| 国产成人综合欧美日韩另类| 欧美另类精品一区二区三区| 国产精品欧美日韩精品| 亚洲欧洲日本一区精品| 国产黄a三级三级三级老师绑| 国产老妇伦国产熟女高清| 欧美日韩伦理片在线观看| 四虎精品在线免费视频| 国产精品国产三级国产专区| 日韩精品一区福利合集| 中文字幕人妻熟女在线| 中文字幕一区日韩欧美| 黑丝美女大战白丝美女| 久久人热视频这里只有精品| 高清一区高清二区高清三区| 亚洲欧美日韩国产一区二区三区 | 亚洲中文字幕第三页在线观看| 日韩欧美亚洲一区二区三区| 黑寡妇精品欧美一区二区毛|