集合类型数据操作
集合类型中不能存在重复的值,并可以进行集合运算。集合通常有无序集合和有序集合两种,无序集合的方法通常以字母s
开头,而有序集合的方法通常以字母z
开头。以下方法常用来操作集合类型数据。
方法 | 功能 | 返回值 |
---|---|---|
.sadd(name, *values) | 向指定键集合中添加元素 | 插入的元素数量 |
.srem(name, *values) | 从指定键集合中删除元素 | 被删除的元素数量 |
.spop(name) | 随机返回并删除指定键集合中的一个元素 | 值 |
.smove(src, dst, value) | 将src 中对应的元素移动到dst 集合 | 布尔值 |
.scard(name) | 返回键为name 的集合个数 | 整型值 |
.sismember(name, value) | 测试指定值是否为指定键集合的成员 | 布尔值 |
.sinter(names, *args) | 返回指定键(列表)的集合的交集 | 集合 |
.sinterstore(dst, names, *args) | 将指定键(列表)的集合的交集保存到dst | 保存集合数量 |
.sunion(names, *args) | 返回指定键(列表)的集合的并集 | 集合 |
.sunionstore(dst, names, *args) | 将指定键(列表)的集合的并集保存到dst | 保存集合的数量 |
.sdiff(names, *args) | 返回指定键(列表)的集合的差集 | 集合 |
.sdiffstore(dst, names, *args) | 将指定键(列表)的集合的差集保存到dst | 保存集合的数量 |
.smembers(name) | 返回指定键集合的所有元素 | 集合 |
.srandmember(name) | 随机返回指定键集合中的一个元素,但不删除 | 值 |
.zadd(name, scores, values) | 向指定键集合中添加元素,score 用于决定其后值的排序 | 添加的元素个数 |
.zrem(name, *values) | 从指定键集合中删除元素 | 被删除的元素个数 |
.zincrby(name, value, amount=1) | 如果指定键集合中存在指定元素则其score 增加amount ,否则添加元素,score 为amount | 修改后的值 |
.zrank(name, value) | 返回指定键集合中指定元素的排名 | 排名值 |
.zrevrank(name, value) | 返回指定键集合中指定元素的倒数排名 | 排名值 |
.zrevrange(name, start, end, withscores=False) | 返回指定键集合的子集合 | 列表 |
.zrangebyscore(name, min, max, start=None, num=None, withscores=False) | 返回指定键集合中score 在指定区间的子集合 | 列表 |
.zcount(name, min, max) | 返回指定键集合中score 在给定区间的元素数量 | 整型值 |
.zcard(name) | 返回指定键集合中元素的个数 | 整型值 |
.zremrangebyrank(name, min, max) | 删除指定键集合中排名在指定区间的元素 | 被删除的元素数量 |
.zremrangebyscore(name, min, max) | 删除指定键集合中score 在指定区间的元素 | 被删除的元素数量 |