Redis学习篇(五)之Set类型及其操作
SADD
作用:向集合中添加元素
语法:SADD key menber [, ...]
添加重复的元素会返回0,失败
SMEMBERS
作用:返回指定集合中的元素
语法: SMEMBERS key
SISMEMBER
作用: 检测value是否是集合中的元素
语法:SISMEMBER key value
SREM
作用:删除集合中的元素
语法: SREM key value
成功返回删除元素的个数,失败返回0
SPOP
作用: 删除集合中的随机元素,并返回删除的元素
语法: SPOP key
SRANDMEMBER
作用: 随机返回集合中的指定个数的随机元素
语法:SRANDMEMBER key count
count的类型:
count为正数并且小于集合长度,返回一个包含随机元素的集合数组;
count为正数并且大于集合长度,会返回整个集合;
count为负数,返回一个数组, 数组中的成员可能重复出现,数组的长度是count的绝对值
SDIFF
作用: 返回集合的差集
语法: SDIFF key, key ...
在前面的集合中,不在后面的集合中的元素
没有差集返回空
SINTER
作用: 求多个集合的交集
语法: SINTER key key ...
SUNION
作用:返回集合中的并集
语法:SUNION key , key ...
SCARD
作用:返回集合的长度
语法:SCARD key
SDIFFSTORE
作用: 将差集结果保存到指定的集合中
语法: SDIFFSTORE destination key key ...
当集合已经存在时,会覆盖
SINTERSTORE
作用: 将交集的结果保存到指定的集合中
语法:SINTERSTORE destination key key ...
SUNIONSTORE
作用: 将并集的结果保存到指定的集合中
语法: SUNIONSTORE destination key key ...
SMOVE
作用: 将结合中的元素移动到另外的集合中
语法:SMOVE source destination member
是一个原子操作
如果目标集合中已经包含了此元素,则只会删除源集合中的元素
Redis学习篇(五)之Set类型及其操作的更多相关文章
- redis学习教程五《管道、分区》
redis学习教程五<管道.分区> 一:管道 Redis是一个TCP服务器,支持请求/响应协议. 在Redis中,请求通过以下步骤完成: 客户端向服务器发送查询,并从套接字读取,通常以阻 ...
- redis 学习(6)-- 集合类型
redis 学习(6)-- 集合类型 set 结构 无序 无重复 集合间操作 set 集合内操作 命令 含义 sadd key memebr1 [member2...] 向集合中添加一个或多个成员 s ...
- redis 学习(5)-- 列表类型
redis 学习(5)-- 列表类型 列表特点 有序.可以重复.左右两边插入弹出 索引相关知识 索引从左往右,从0开始逐个增大 0 1 2 3 4 5 索引从右往左,从-1开始逐个减小 -6 -5 - ...
- redis 学习(3)-- String 类型
redis 学习(3)-- String 类型 String-结构 结构:Key-Value对 Value:可以是字符串.数字,也可以是二进制数组 限制:Value最大值为512MB String-常 ...
- redis学习 (key)键,Python操作redis 键 (二)
# -*- coding: utf-8 -*- import redis #这个redis 连接不能用,请根据自己的需要修改 r =redis.Redis(host=") 1. delete ...
- redis学习(五)
一.Redis 发布订阅 1.Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. 2.Redis 客户端可以订阅任意数量的频道. 比如你订阅 ...
- Redis学习笔记--五种数据类型的使用场景
String 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一 ...
- redis数据类型(五)set类型
一. set类型 set是无序集合,最大可以包含(2 的 32 次方-1)个元素. set 的是通过 hash table 实现的,所以添加,删除,查找的复杂度都是 O(1). hash table ...
- Redis学习篇(四)之List类型及其操作
Redis的List是一个双向链表 LPUSH 作用:向列表左端添加元素 语法:LPUSH key value value... 从左到右逐个添加到左端,前面的先添加, 可以一次添加多个元素 RPUS ...
随机推荐
- A Beginner’s Guide to Eigenvectors, PCA, Covariance and Entropy
A Beginner’s Guide to Eigenvectors, PCA, Covariance and Entropy Content: Linear Transformations Prin ...
- ③ 设计模式的艺术-03.工厂方法(Factory Method)模式
public interface Car { void run(); } public class Audi implements Car { @Override public void run() ...
- 【CodeForces】913 D. Too Easy Problems
[题目]D. Too Easy Problems [题意]给定n个问题和总时限T,每个问题给定时间ti和限制ai,当解决的问题数k<=ai时问题有效,求在时限T内选择一些问题解决的最大有效问题数 ...
- Array和String测试与java.String.split
java.string.split() 存在于java.lang包中,返回值是一个数组. 作用是按指定字符或者正则去切割某个字符串,结果以字符串数组形式返回. 例 String [] toSort = ...
- password passphrase passcode 的区别
In general, passphrases are long passwords and passcodes are numeric-only passwords.
- Django【进阶】modelform
modelform:models+form 建议尽量用Djangoform,更灵活,但也有人用modelform,写起来很简单 缺点,在models里面,表模型必须有__str__()方法 可添加 ...
- (转)什么是CDC类(Communication Device Class)
全文地址:http://justmei.blog.163.com/blog/static/1160998532010321112522467/ 什么是CDC类 (Communication Devic ...
- js实现图片上传预览
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- gdb安装
1.卸载原有gdb 以root用户登录 1.1 查询原有gdb包名,执行命令: rpm -q gdb 1.2 卸载原有gdb包,假设gdb包名为gdb-7.0-0.4.16,执行命令:rpm - ...
- linux系统查找具体进程
ps -ef | grep '查找内容' eg:ps -ef | grep '测试USB设备穿透'