当前位置:   article > 正文

redis操作set类型的基本命令_redis set结构 读取

redis set结构 读取

    set数据类型可以理解为java中的hashtable,它是无序的,set中成员也是唯一的,我们来学习set的常用命令。

 

  • sadd key 追加的值(向set中值)

127.0.0.1:6379> sadd s1 a b c d e
(integer) 5

 

  • scard key (获取set中的集合数)

127.0.0.1:6379> scard s1
(integer) 5

 

  • smembers key(取出set中所有的值)

127.0.0.1:6379> smembers s1
1) "d"
2) "b"
3) "a"
4) "c"
5) "e"

    这里前面提到set数据类型是无序得,所以取出来的时候,没有按照添加的顺序打印出来。

 

  • sismember key 值(查看指定的值是不是set中的成员,是的话,返回1,不是的话返回0,用于校验值存不存在,这里和c语言中的,判断相似,0是false,0以外都是true)

127.0.0.1:6379> smembers s1
1) "d"
2) "b"
3) "a"
4) "c"
5) "e"
127.0.0.1:6379> sismember s1 a
(integer) 1
127.0.0.1:6379> sismember s1 aaa
(integer) 0

 

  • srandmember key count(返回集合中一个或多个随机数,参数中的count是来指定一个,或多个)

127.0.0.1:6379> srandmember s1 1  #返回一个随机数
1) "a"
127.0.0.1:6379> srandmember s1 2 #返回两个随机数
1) "b"
2) "e"

 

  • serm key 值(删除set中指定的值,可以删除多个,返回删除的个数)

127.0.0.1:6379> smembers s1
1) "d"
2) "a"
3) "b"
4) "e"
5) "c"
127.0.0.1:6379> srem s1 a b
(integer) 2
127.0.0.1:6379> smembers s1
1) "d"
2) "e"
3) "c"

 

  • spop key count(随机删除并弹出set中的指定个数的元素)

127.0.0.1:6379> smembers s1
1) "d"
2) "b"
3) "a"
4) "e"
5) "c"
127.0.0.1:6379>
127.0.0.1:6379> spop s1 2
1) "e"
2) "b"
127.0.0.1:6379> smembers s1
1) "d"
2) "a"
3) "c"

    

  • smove key1 key2 指定的值(从key1中移动指定的值,到key2中)

127.0.0.1:6379> smembers s1
1) "d"
2) "e"
3) "b"
4) "a"
5) "c"
127.0.0.1:6379> smembers s2
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
127.0.0.1:6379> smove s1 s2 e
(integer) 1
127.0.0.1:6379> smembers s1
1) "d"
2) "b"
3) "a"
4) "c"
127.0.0.1:6379> smembers s2
1) "4"
2) "1"
3) "e"
4) "5"
5) "3"
6) "2"

 

  • sdiff key1 key2(取出key1中和key2不一样的元素,也可叫做差集)

127.0.0.1:6379> smembers s1
1) "b"
2) "a"
3) "c"
4) "1"
5) "3"
6) "2"
127.0.0.1:6379> smembers s2
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
127.0.0.1:6379> sdiff s1 s2
1) "a"
2) "b"
3) "c"

 

  • sdiffstore key3 key1 key2 (取出key1中和key2不一样的元素,并存储到key3中)

127.0.0.1:6379> smembers s1
1) "1"
2) "b"
3) "a"
4) "c"
5) "2"
127.0.0.1:6379> smembers s2
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
127.0.0.1:6379> sdiffstore s3 s1 s2
(integer) 3
127.0.0.1:6379> smembers s1
1) "1"
2) "b"
3) "a"
4) "c"
5) "2"
127.0.0.1:6379> smembers s2
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
127.0.0.1:6379> smembers s3
1) "a"
2) "b"
3) "c"

 

  • sinter key1 key2(取出key1和key2中一样的元素,也可称为交集)

127.0.0.1:6379> smembers s1
1) "1"
2) "b"
3) "a"
4) "c"
5) "2"
127.0.0.1:6379> smembers s2
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
127.0.0.1:6379> sinter s1 s2
1) "1"
2) "2"

 

  • sinterstone key3 key1 key2(取出key1和key2中一样的元素,存储到key3中)

127.0.0.1:6379> smembers s1
1) "1"
2) "b"
3) "a"
4) "c"
5) "2"
127.0.0.1:6379> smembers s2
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
127.0.0.1:6379> sinterstore s3 s1 s2
(integer) 2
127.0.0.1:6379> smembers s3
1) "1"
2) "2"

 

  • sunion key1 key2(取出key1和key2的所有值,自动剔除重复,也可称为并集)

127.0.0.1:6379> smembers s1
1) "1"
2) "b"
3) "a"
4) "c"
5) "2"
127.0.0.1:6379> smembers s2
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
127.0.0.1:6379> sunion s1 s2
1) "4"
2) "1"
3) "5"
4) "b"
5) "a"
6) "3"
7) "2"
8) "c"

 

  • sunionstore key3 key1 key2(将key1和key2中的值,存储到key3中,并且去掉重复)

127.0.0.1:6379>  smembers s1
1) "1"
2) "b"
3) "a"
4) "c"
5) "2"
127.0.0.1:6379>  smembers s2
1) "1"
2) "2"
3) "3"
4) "4"
5) "5"
127.0.0.1:6379> sunionstore s3 s1 s2
(integer) 8
127.0.0.1:6379> smembers s3
1) "4"
2) "1"
3) "5"
4) "b"
5) "a"
6) "3"
7) "2"
8) "c"

    

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/513045
推荐阅读
相关标签
  

闽ICP备14008679号