Redisコマンドラーニング-set(集合)

50542 ワード

1. SADD
    SADD key member[member ...]:1つ以上のメンバーを集合keyに計上すると、すでに存在するメンバーは無視されます.計上keyが存在しない場合、member要素を含むセットが作成されます.keyがコレクションでない場合、エラーが返されます.
戻り値:コレクションに追加された要素の数.

   
   
   
   
  1. 127.0.0.1:6379> SADD bbs "csdn.com"
  2. (integer) 1
  3. 127.0.0.1:6379> SADD bbs "redis.com" "googe.com"
  4. (integer) 2
  5. 127.0.0.1:6379> SADD bbs "redis.com" "mongodb.com"
  6. (integer) 1

2. SCARD 
SCARD key:コレクション内の要素の数を返します.
戻り値:コレクション内の要素の数、keyが存在しない場合は0を返します.

   
   
   
   
  1. 127.0.0.1:6379> SADD tools pc printer phone
  2. (integer) 3
  3. 127.0.0.1:6379> SCARD tools
  4. (integer) 3
  5. 127.0.0.1:6379>

3. SDIFF
    ​SDIFF key[key ...]:指定されたすべてのセットの差分セットであるセットのすべてのメンバーを返します.
存在しないkeyは空のセットと見なされます.
戻り値:差分セットを含むメンバーのリスト.

   
   
   
   
  1. 127.0.0.1:6379> SADD a 2 3 4 5
  2. (integer) 4
  3. 127.0.0.1:6379> SADD b 4 5 6 7 8
  4. (integer) 5
  5. 127.0.0.1:6379> SDIFF a b
  6. 1) "2"
  7. 2) "3"
  8. 127.0.0.1:6379> SDIFF a
  9. 1) "2"
  10. 2) "3"
  11. 3) "4"
  12. 4) "5"

4. SDIFFSTORE 
    ​SDIFFSTORE destination key[key ...] :このコマンドはSDIFFコマンドと似ていますが、結果はdestinationに保存されます.
戻り値:結果セット内の要素の数.

   
   
   
   
  1. 127.0.0.1:6379> SDIFFSTORE c a b
  2. (integer) 2
  3. 127.0.0.1:6379> SMEMBERS c
  4. 1) "2"
  5. 2) "3"

5. SINTER
   SINTER key[key ... ]:指定したすべての集合の交差である集合のすべてのメンバーを返します.
戻り値:交差リスト.

   
   
   
   
  1. 127.0.0.1:6379> SADD a 1 2 3 4
  2. (integer) 4
  3. 127.0.0.1:6379> SADD b 2 4 6 8 10
  4. (integer) 5
  5. 127.0.0.1:6379> SINTER a b
  6. 1) "2"
  7. 2) "4"
  8. 127.0.0.1:6379> SINTER a
  9. 1) "1"
  10. 2) "2"
  11. 3) "3"
  12. 4) "4"
  13. 127.0.0.1:6379> SINTER a c
  14. (empty list or set)

6. SINTERSTORE
    ​SINTERSTORE destination key[key ...] :SINTERコマンドと同様、結果をdestinationコレクションに格納するだけです.
戻り値:結果セットのメンバー数.

   
   
   
   
  1. 127.0.0.1:6379> SINTERSTORE d a b
  2. (integer) 2
  3. 127.0.0.1:6379> SMEMBERS d
  4. 1) "2"
  5. 2) "4"

7. SISMEMBER
SISMEMBER key member:memberが集合keyのメンバーであるか否かを判定する.
戻り値:は1を返します.そうでない場合は0を返します.

   
   
   
   
  1. 127.0.0.1:6379> SISMEMBER d 2
  2. (integer) 1

8. SMEMBERS
SMEMBERS key:コレクションkeyのすべてのメンバーを返します.
戻り値:コレクション内のすべての要素.
    ​

   
   
   
   
  1. 127.0.0.1:6379> SMEMBERS d
  2. 1) "2"
  3. 2) "4"
  4. 127.0.0.1:6379> SMEMBERS empty
  5. (empty list or set)

9. SMOVE
SMOVE source des member:メンバー要素をセットsourceからdesに移動します.ソース要素にメンバーが含まれていない場合は何もしません.desに要素メンバーが既に存在する場合は、メンバーをsourceから削除するだけです.
この操作は原子的である.
戻り値:正常に除去された場合は1を返し、そうでない場合は0を返します.

   
   
   
   
  1. 127.0.0.1:6379> SADD songs "a" "b"
  2. (integer) 2
  3. 127.0.0.1:6379> SMOVE songs my_songs "a"
  4. (integer) 1
  5. 127.0.0.1:6379> SMEMBERS songs
  6. 1) "b"
  7. 127.0.0.1:6379> SMEMBERS my_songs
  8. 1) "a"

10. SPOP
SPOP key:コレクション内のランダム要素を削除して返します.ランダム要素を1つだけ取得したい場合、削除したくない場合はSRANDMEMBERを使用します.
戻り値:削除されたランダム要素.keyが存在しないか、空の集合である場合、nilを返します.

   
   
   
   
  1. 127.0.0.1:6379> SADD db mysql mongodb redis
  2. (integer) 3
  3. 127.0.0.1:6379> spop db
  4. "mongodb"
  5. 127.0.0.1:6379> SMEMBERS db
  6. 1) "redis"
  7. 2) "mysql"

11. SRANDMEMBER
SRANDMEMBER key[count]:keyパラメータのみの場合、セット内のランダム要素が返されます.
countパラメータを指定し、count>0を指定します.countが集合の長さより小さい場合は、重複しないランダム要素を含むサブ集合を返し、集合の長さより大きい場合は、全体の集合を返します.count<0の場合、配列が返されると、配列内の集合が繰り返される可能性があります.

   
   
   
   
  1. 127.0.0.1:6379> SADD fruit apple banana cherry
  2. (integer) 3
  3. 127.0.0.1:6379> SRANDMEMBER fruit
  4. "cherry"
  5. 127.0.0.1:6379> SRANDMEMBER fruit 3
  6. 1) "apple"
  7. 2) "cherry"
  8. 3) "banana"
  9. 127.0.0.1:6379> SRANDMEMBER fruit -4
  10. 1) "banana"
  11. 2) "cherry"
  12. 3) "banana"
  13. 4) "apple"

 12. SREM
    ​SREM key member[member .. ]:コレクション内の1つ以上の要素を削除すると、存在しない要素は自動的に無視されます.
戻り値:削除に成功した要素の数.

   
   
   
   
  1. 127.0.0.1:6379> SADD languages c lisp java python ruby
  2. (integer) 5
  3. 127.0.0.1:6379> SREM languages ruby
  4. (integer) 1
  5. 127.0.0.1:6379> SREM languages none
  6. (integer) 0
  7. 127.0.0.1:6379> SREM languages lisp java
  8. (integer) 2

13. SUNION
    ​SUNION key [key ...]:指定したすべての集合の集合である集合のすべてのメンバーを返します.
戻り値:並列リスト.

   
   
   
   
  1. 127.0.0.1:6379> SADD songs jan
  2. (integer) 1
  3. 127.0.0.1:6379> SADD mysong tt
  4. (integer) 1
  5. 127.0.0.1:6379> SUNION songs mysong
  6. 1) "jan"
  7. 2) "tt"
  8. 3) "b"

14. SUNIONSTORE
    ​SUNIONSTORE destination key[key .. ]:SUIONコマンドと同様に、このコマンドは保存され、destinationセットに集約されます.
戻り値:コレクション内の要素の数.

   
   
   
   
  1. 127.0.0.1:6379> SUNIONSTORE all songs mysong
  2. (integer) 3

15. SSCAN
SCANコマンドと同じです.