### 集合簡介
類似于數(shù)學(xué)中的集合,對集合的操作有添加刪除元素,有對多個(gè)集合求交并差等操作。
操作中key理解為集合的名字。比如在微博應(yīng)用中,可以將一個(gè)用戶所有的關(guān)注人存在一個(gè)集合中,將其所有粉絲存在一個(gè)集合。因?yàn)閞edis非常人性化的為集合提供了求交集、并集、差積等操作,那么久可以非常方便的實(shí)現(xiàn)如同關(guān)注、共同喜好、二度好友等功能,對上面的所有集合操作,你還可以使用不同的命令選擇將結(jié)果返回給客戶端還是存集到一個(gè)新的集合中。
qq有一個(gè)社交功能叫做“好友標(biāo)簽”,大家可以給你的好友貼標(biāo)簽,比如“大美女”、“土豪”、“歐巴”等等,這時(shí)就可以使用redis的集合來實(shí)現(xiàn),把每一個(gè)客戶的標(biāo)簽都存儲(chǔ)在一個(gè)集合之中。
### 常用命令
#### 插入元素
127.0.0.1:6379> sadd set1 dang #向set1中放入元素
(integer) 1
127.0.0.1:6379> sadd set1 linux
(integer) 1
127.0.0.1:6379> sadd set1 python
(integer) 1
127.0.0.1:6379> sadd set1 NOSQL
(integer) 1
#### 刪除元素
srem set1 aaaa //刪除元素
spop set1 //隨機(jī)取出一個(gè)元素,刪除
#### 獲取元素
127.0.0.1:6379> smembers set1 #獲取集合中的所有元素
1) "linux"
2) "nosql"
3) "python"
4) "dang"
sismember seta aaa //判斷一個(gè)元素是否屬于一個(gè)集合
srandmember seta //隨機(jī)取出一個(gè)元素,但不刪除
#### 交并差
sdiff seta setb //求差集,以seta為標(biāo)準(zhǔn)
sdiffstore seta setb setc //求差集并存儲(chǔ),存儲(chǔ)到了seta里
sinter seta setb //求交集
sinterstore seta setb setc //求交集并存儲(chǔ),存儲(chǔ)到seta
sunion seta setb //求并集
sunionstore sete seta setb //求并集并將結(jié)果存儲(chǔ)在sete
創(chuàng)新互聯(lián)自2013年創(chuàng)立以來,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢想脫穎而出為使命,1280元濰城做網(wǎng)站,已為上家服務(wù),為濰城各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792