redis学習ノート6−集合型

2177 ワード

コレクション内の各要素は重さが除去され、順序がありません.
//集合タイプとリストタイプの比較
集合タイプ
リストの種類
コンテンツの保存
最大2^32-1文字列
最大2^32-1文字列
秩序性
いいえ
はい
ユニーク性
はい
いいえ
//コマンド
1.要素の追加/削除
127.0.0.1:6379> sadd letters a
(integer) 1          #              。
127.0.0.1:6379> sadd letters a b c
(integer) 2	     # 'a'    ,            。
127.0.0.1:6379> srem letters c d
(integer) 1       #           ,  ‘d’        ,        。
2. コレクション内のすべての要素を取得
127.0.0.1:6379> smembers letters
1) "b"
2) "a"

3.要素が集合中にあるかどうかを判断する
127.0.0.1:6379> sismember letters a
(integer) 1
127.0.0.1:6379> sismember letters d
(integer) 0

4.集合間演算差セット
A-B:
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"

B-A: 
127.0.0.1:6379> sdiff setB setA
1) "4"
A-B-C:
127.0.0.1:6379> sadd setC 2 3
(integer) 2
127.0.0.1:6379> sdiff setA setB setC
1) "1"
交差
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> sadd setC 2 3
(integer) 2
A∩B:
127.0.0.1:6379> sinter setA setB
1) "2"
2) "3"

A∩B∩C 
127.0.0.1:6379> sinter setA setB setC
1) "2"
2) "3"
同時セット
A∪B:
127.0.0.1:6379> sunion setA setB
1) "1"
2) "2"
3) "3"
4) "4"

A∪B∪C: 
127.0.0.1:6379> sunion setA setB setC
1) "1"
2) "2"
3) "3"
4) "4"

5.コレクション内の要素の数を取得
127.0.0.1:6379> smembers setA
1) "1"
2) "2"
3) "3"
127.0.0.1:6379> scard setA
(integer) 3

6.コレクションから要素をポップアップ
127.0.0.1:6379> smembers setC
1) "2"
2) "3"
127.0.0.1:6379> spop setC
"3"
127.0.0.1:6379> smembers setC
1) "2"