Redis筆記---set

1.redis set的介紹redis

   集合中的數據是不重複且沒有順序,集合類型和列表類型的對比。spa

   集合類型:存儲的是的是最多2的32次方減一個字符串,數據是沒有順序的,可是數據是惟一的code

  列表類型:最多存儲內容最多2的32次方減一個字符串,數據是有序的,它的數據不是惟一的。blog

  集合類型的經常使用操做是向集合中假如或者刪除元素。判斷某個元素是否存在等,因爲集合類型的Redis內部是使用值爲空的散轉表實現,全部這些操做的時間複雜度都爲o(1);rem

  redis還提供了多個集合之間的交集、並集、差集的運算字符串

2.命令:io

(1)增長、刪除元素ast

 語法:SADD key member [member ……]class

127.0.0.1:6379> sadd set a b c (integer) 3
127.0.0.1:6379> sadd set a (integer) 0

 語法:SREM key member [member……]語法

127.0.0.1:6379> srem set c d (integer) 1

(2)得到集合中的全部元素

語法:SMEMBERS key

smembers key 1) "b"
2) "a」

(3)判斷元素是否在集合中

語法:sismember key member  存在值爲1,不存在值爲0

127.0.0.1:6379> sismember set a (integer) 1
127.0.0.1:6379> sismember set h (integer) 0

(4)運算命令

   集合的差集運算A-B,屬於A可是不屬於B

   語法:sdiff key [key……]

127.0.0.1:6379> sadd setA 1 2 3 (integer) 3
127.0.0.1:6379> sadd setB 2 3 4 (integer) 3
127.0.0.1:6379> sdiff setA setB 1) "1"
127.0.0.1:6379> sdiff setB setA 1) "4"

集合交集運算,屬於A且屬於B元素構成的集合

語法:sinter key key ……

127.0.0.1:6379> sinter setA setB 1) "2"
2) "3"

集合的並集運算,A和B一塊兒組成的數據

sunion key key ……

127.0.0.1:6379> sunion setA setB 1) "1"
2) "2"
3) "3"
4) "4"

獲取集合的元素個數

語法:scard key

127.0.0.1:6379> scard setA 
(integer) 3

從集合中彈出一個元素,因爲集合是無序的,全部spop命令會從集合中隨機選擇一個元素彈出

語法:spop key

127.0.0.1:6379> spop setA "1「

 

 

 

127.0.0.1:6379> sadd set a b c

(integer) 3

127.0.0.1:6379> sadd set a

(integer) 0

相關文章
相關標籤/搜索