redis命令Set型別(七)

2021-08-14 11:12:41 字數 1872 閱讀 2896

集合型別

集合型別:無序、不可重複

列表型別:有序、可重複

命令:

1>增加/刪除元素

語法:sadd key member [member …]

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

127.0.0.1:6379> smembers set

1) "b"

2) "a」

3>判斷元素是否在集合中

語法:sismember key member

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的元素構成的集合或屬於b並且不屬於a的元素構成的集合eg;

語法:sdiff key [key …]

127.0.0.1:6379> sadd seta 123

(integer) 3

127.0.0.1:6379> sadd setb 234

(integer) 3

127.0.0.1:6379> sdiff seta setb

1) "1"

127.0.0.1:6379> sdiff setb seta

1) "4"

集合的交集運算 a ∩ b

屬於a且屬於b的元素構成的集合

語法:sinter key [key …]

127.0.0.1:6379> sinter seta setb 

1) "2"

2) "3"

集合的並集運算 a ∪ b

屬於a或者屬於b的元素構成的集合

語法:sunion key [key …]

127.0.0.1:6379> sunion seta setb

1) "1"

2) "2"

3) "3"

4) "4"

5>其他

@獲得集合中元素的個數

語法:scard key

127.0.0.1:6379> smembers seta 

1) "1"

2) "2"

3) "3"

127.0.0.1:6379> scard seta

(integer) 3

@從集合中彈出乙個元素

注意:由於集合是無序的,所有spop命令會從集合中隨機選擇乙個元素彈出

語法:spop key

127.0.0.1:6379> spop seta 

"1「

Redis學習(七) 集合型別(Set)

集合中的每個元素都是不同的,且沒有順序。集合在redis內部是使用值為空的雜湊表實現的。所以向集合中加入 刪除元素 判斷某個元素是否存在的時間複雜度都是o 1 多個集合之間還可以進行交集 並集和差集運算。1.多條件查詢 1.增加 刪除元素 sadd key member member 返回成功加入的...

Redis 集合 Set)命令

redis的set是string型別的無序集合。集合成員是唯一的,意味著集合中不能出現重複的資料。redis中集合是通過雜湊表實現的,所以刪除,新增,查詢的複雜度都是o 1 命令 描述sunion 返回所有給定集合的並集 scard 獲取集合的成員數 srandmember 返回集合中乙個或多個隨機...

Redis常見命令 字串型別set命令

這一講,以redis5.0為例,討論一下最常見的redis命令。基本語法如下 set key value ex seconds px milliseconds nx xx keepttl 語法說明 key value ex seconds px milliseconds 中括號一般表示這個引數是可選...