Sadd命令
Redis Sadd 命令将一个或多个成员元素加入到集合中,已经存在于集合的成员元素将被忽略。
假如集合 key 不存在,则创建一个只包含添加的元素作成员的集合。
当集合 key 不是集合类型时,返回一个错误。
注意:在 Redis2.4 版本以前, SADD 只接受单个成员值。
语法
redis Sadd 命令基本语法如下:
redis 127.0.0.1:6379> SADD KEY_NAME VALUE1..VALUEN
可用版本:>= 1.0.0
返回值
被添加到集合中的新元素的数量,不包括被忽略的元素。
实例
redis 127.0.0.1:6379> SADD myset "hello"
(integer) 1
redis 127.0.0.1:6379> SADD myset "foo"
(integer) 1
redis 127.0.0.1:6379> SADD myset "hello"
(integer) 0
redis 127.0.0.1:6379> SMEMBERS myset
1) "hello"
2) "foo"
redis 127.0.0.1:6379> SCARD myset
(integer) 2
Redis Smembers 命令返回集合中的所有的成员。 不存在的集合 key 被视为空集合。
Redis Scard 命令返回集合中元素的数量。
Srandmember 命令
Redis Srandmember 命令用于返回集合中的一个随机元素。
从 Redis 2.6 版本开始, Srandmember 命令接受可选的 count 参数:
- 如果 count 为正数,且小于集合基数,那么命令返回一个包含 count 个元素的数组,数组中的元素各不相同。如果 count 大于等于集合基数,那么返回整个集合。
- 如果 count 为负数,那么命令返回一个数组,数组中的元素可能会重复出现多次,而数组的长度为 count 的绝对值。
该操作和 SPOP 相似,但 SPOP 将随机元素从集合中移除并返回,而 Srandmember 则仅仅返回随机元素,而不对集合进行任何改动。
语法
redis Srandmember 命令基本语法如下:
redis 127.0.0.1:6379> SRANDMEMBER KEY [count]
可用版本:>= 1.0.0
返回值
只提供集合 key 参数时,返回一个元素;如果集合为空,返回 nil 。 如果提供了 count 参数,那么返回一个数组;如果集合为空,返回空数组。
实例
redis 127.0.0.1:6379> SADD myset1 "hello"
(integer) 1
redis 127.0.0.1:6379> SADD myset1 "world"
(integer) 1
redis 127.0.0.1:6379> SADD myset1 "bar"
(integer) 1
redis 127.0.0.1:6379> SRANDMEMBER myset1
"bar"
redis 127.0.0.1:6379> SRANDMEMBER myset1 2
1) "Hello"
2) "world"
参考:https://www.runoob.com/redis/sets-sadd.html
https://www.runoob.com/redis/sets-scard.html
https://www.runoob.com/redis/sets-smembers.html
https://www.runoob.com/redis/sets-srandmember.html