redis 数据结构 - 无序集合 set

10.3 集合 -set(无序,元素具有唯一性)
10.3.1 添加
    命令:sadd key value
    测试:
    127.0.0.1:6379> sadd gender male female
    (integer) 2
    127.0.0.1:6379> sadd gender yoa yoa 
    (integer) 1
10.3.2 查看
    命令:smembers key
    测试:
    127.0.0.1:6379> smembers gender
    1) "male"
    2) "female
10.3.3 删除
    命令:srem key value
    测试:
    127.0.0.1:6379> srem gender male
    (integer) 1
    127.0.0.1:6379> smembers gender
    1) "female"
10.3.4 随机取出set中的指定数量的值,并删除集合中的元素
    命令:spop key num
    测试:
    127.0.0.1:6379> sadd zimu a b c d e f g 
    (integer) 7
    127.0.0.1:6379> spop zimu
    "e"
    127.0.0.1:6379> smembers zimu
    1) "c"
    2) "b"
    3) "d"
    4) "a"
    5) "g"
    6) "f"
    127.0.0.1:6379> spop zimu 2
    1) "f"
    2) "b"
    127.0.0.1:6379> smembers zimu
    1) "c"
    2) "d"
    3) "a"
    4) "g"
    127.0.0.1:6379> spop zimu 3
    1) "g"
    2) "c"
    3) "a"
    127.0.0.1:6379> smembers zimu
    1) "d"
10.3.5 随机取出set中的指定数量的值,但不删除集合中的元素
    命令:srandmember key num
    测试:
    127.0.0.1:6379> sadd zimu a b c d e f g
    (integer) 6
    127.0.0.1:6379> srandmember zimu 
    "a"
    127.0.0.1:6379> smembers zimu
    1) "c"
    2) "e"
    3) "b"
    4) "d"
    5) "g"
    6) "f"
    7) "a"
    127.0.0.1:6379> srandmember zimu 3
    1) "b"
    2) "f"
    3) "g"
    127.0.0.1:6379> smembers zimu
    1) "c"
    2) "e"
    3) "b"
    4) "d"
    5) "g"
    6) "f"
    7) "a"
10.3.6 查看集合中是否存在某一个元素
    命令:sismember key value
    存在返回1,不存在返回0
    测试:
    127.0.0.1:6379> smembers zimu
    1) "c"
    2) "e"
    3) "b"
    4) "d"
    5) "g"
    6) "f"
    7) "a"
    127.0.0.1:6379> sismember zimu a
    (integer) 1
    127.0.0.1:6379> sismember zimu l
    (integer) 0
10.3.7 查看集合中元素的个数
    命令:scard key
    测试:
    127.0.0.1:6379> smembers zimu
    1) "c"
    2) "e"
    3) "b"
    4) "d"
    5) "g"
    6) "f"
    7) "a"
    127.0.0.1:6379> scard zimu
    (integer) 7
10.3.8 将一个集合中元素移动到另外一个集合中
    命令:smove src dest value
    测试:
    127.0.0.1:6379> smembers zimu
    1) "c"
    2) "e"
    3) "b"
    4) "d"
    5) "g"
    6) "f"
    7) "a"
    127.0.0.1:6379> smove zimu zimu1 c
    (integer) 1
    127.0.0.1:6379> smembers zimu
    1) "e"
    2) "b"
    3) "d"
    4) "g"
    5) "f"
    6) "a"
    127.0.0.1:6379> smembers zimu1
    1) "c"
    127.0.0.1:6379> scard zimu
    (integer) 6
    127.0.0.1:6379> scard zimu1
    (integer) 1
    127.0.0.1:6379> smove zimu zimu1 l
    (integer) 0
    127.0.0.1:6379> scard zimu
    (integer) 6
    127.0.0.1:6379> scard zimu1
    (integer) 1
    127.0.0.1:6379> smembers zimu
    1) "e"
    2) "b"
    3) "d"
    4) "g"
    5) "f"
    6) "a"
    127.0.0.1:6379> smembers zimu1
    1) "c"
10.3.9 求集合的交集
    命令:sinter key1 key2 key3 ...
    测试:
    127.0.0.1:6379> sadd lisi a b c d e
    (integer) 5
    127.0.0.1:6379> sadd wang a c d f g
    (integer) 5
    127.0.0.1:6379> sadd zhang c d f k j
    (integer) 5
    127.0.0.1:6379> sinter lisi wang zhang
    1) "c"
    2) "d"
10.3.10 求集合的并集
    命令:sunion key1 key2 key3 ...
    测试:
    127.0.0.1:6379> sunion lisi wang zhang
    1) "d"
    2) "b"
    3) "g"
    4) "f"
    5) "a"
    6) "j"
    7) "k"
    8) "e"
    9) "c"
10.3.11 求集合的差集
    命令:sdiff key1 key2 key3 ...
    测试:
    127.0.0.1:6379> sdiff lisi wang
    1) "b"
    2) "e"
    127.0.0.1:6379> sdiff wang lisi
    1) "g"
    2) "f"
    127.0.0.1:6379> sdiff wang lisi zhang
    1) "g"      
10.3.12 求集合的交集并存储
    命令:sinterstore dest key1 key2 ....
    测试:
    127.0.0.1:6379> sinterstore destinter lisi wang
    (integer) 3
    127.0.0.1:6379> smembers destinter
    1) "c"
    2) "d"
    3) "a"
10.3.13 求集合的并集并存储
    命令:sunionstore dest key1 key2 ...
    测试:
    127.0.0.1:6379> sunionstore destunion lisi wang
    (integer) 7
    127.0.0.1:6379> smembers destunion
    1) "c"
    2) "e"
    3) "b"
    4) "d"
    5) "g"
    6) "f"
    7) "a"
10.3.14 求集合的差集并存储
    命令:sdiffstore dest key1 key2 ...
    测试:
    127.0.0.1:6379> sdiffstore destdiff lisi wang
    (integer) 2
    127.0.0.1:6379> smembers destdiff
    1) "b"
    2) "e"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值