Redis笔记- Set

Redis的Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。

Redis 中 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。

实例:通过 SADD 命令向名为 runoobkey 的集合插入的三个元素

redis 127.0.0.1:6379> SADD runoobkey redis
(integer) 1
redis 127.0.0.1:6379> SADD runoobkey mongodb
(integer) 1
redis 127.0.0.1:6379> SADD runoobkey mysql
(integer) 1
redis 127.0.0.1:6379> SADD runoobkey mysql
(integer) 0
redis 127.0.0.1:6379> SMEMBERS runoobkey

1) "mysql"
2) "mongodb"
3) "redis"

命令:SADD key member1 [member2] 向集合添加一个或多个成员SCARD key 获取集合的成员数SDIFF key1 [key2] 返回给定所有集合的差集SDIFFSTORE destination key1 [key2] 返回给定所有集合的差集并存储在 destination 中SINTER key1 [key2] 返回给定所有集合的交集SINTERSTORE destination key1 [key2] 返回给定所有集合的交集并存储在 destination 中SISMEMBER key member 判断 member 元素是否是集合 key 的成员SMEMBERS key 返回集合中的所有成员SMOVE source destination member 将 member 元素从 source 集合移动到 destination 集合SPOP key 移除并返回集合中的一个随机元素SRANDMEMBER key [count] 返回集合中一个或多个随机数如果 count 为正数,且小于集合基数,那么命令返回一个包含 count 个元素的数组,数组中的元素各不相同。如果 count 大于等于集合基数,那么返回整个集合。如果 count 为负数,那么命令返回一个数组,数组中的元素可能会重复出现多次,而数组的长度为 count 的绝对值。该操作和 SPOP 相似,但 SPOP 将随机元素从集合中移除并返回,而 Srandmember 则仅仅返回随机元素,而不对集合进行任何改动。SREM key member1 [member2] 移除集合中一个或多个成员SUNION key1 [key2] 返回所有给定集合的并集SUNIONSTORE destination key1 [key2] 所有给定集合的并集存储在 destination 集合中SSCAN key cursor [MATCH pattern] [COUNT count] 迭代集合中的元素
时间: 2024-08-18 06:41:26

Redis笔记- Set的相关文章

redis笔记

redis笔记 下载完redis,执行make命令. 然后启动redis就进src文件夹,执行./redis-server就可以了. 再在文件夹下执行 ./redis-cli 就可以执行redis的命令了. pipelining  一次请求发送多个命令,以提高性能.我们在使用redis时都是向它发送命令,每次都是需要和redis建立tcp连接,然后发送命令信息,redis执行命令后,客户端等待着redis的响应.这个我们当然知道,就像访问db,IO开销都是消耗资源的大头,所以redis提供了pi

Redis笔记整理(二):Java API使用与Redis分布式集群环境搭建

[TOC] Redis笔记整理(二):Java API使用与Redis分布式集群环境搭建 Redis Java API使用(一):单机版本Redis API使用 Redis的Java API通过Jedis来进行操作,因此首先需要Jedis的第三方库,因为使用的是Maven工程,所以先给出Jedis的依赖: <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactI

Redis笔记整理(三):进阶操作与高级部分

[TOC] Redis笔记整理(三):进阶操作与高级部分 Redis发布订阅 Redis发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. Redis客户端可以订阅任意数量的频道. 下图展示了频道channel1,以及订阅这个频道的三个客户端--client1,client2,client5之间的关系. 当有新消息通过PUBLISH命令发送给频道channel1时,这个消息就会被发送给订阅它的三个客户端: 相关操作命令如下: 命令 描述 PSUBS

传智168期 day61 redis 笔记(2017年8月25日19:16:30)

redis入门笔记,介绍了如何在Linux下搭建redis,开启redis服务,还有常见的操作. 笔记下载: 链接:https://pan.baidu.com/s/1sl9GneP 密码:yh7k

Redis笔记——技术点汇总

目录 · 特点 · 安装 · 数据库 · 服务器命令 · 数据类型及其操作命令 · 数据结构 · string · list · set · hash · zset · 发布与订阅 · 排序 · 事务 · pipeline · 基准测试 · 键的过期 · 持久化 · 概况 · snapshoting · AOF · 主从复制 · HA · Lua · 示例:分布式日志 特点 1. Redis是一个开源的.C语言编写的.面向键值对类型数据的分布式NoSQL数据库系统. 2. 特点:高性能(内存数据

redis笔记(一)-string数据类型

一.概述: 字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中字符串类型的Value最多可以容纳的数据长度是512M. 二.相关命令列表: 命令原型                                            时间复杂度             返回值 命令描述 APPEND key value O(1) 追加后Value的长度 如果该Key已

小蚂蚁学习Redis笔记(5)——Redis数据类型之list类型

Redis之lists类型以及操作 list是一个链表结构,主要功能是push.pop,获取一个范围的所有值等等.操作中key理解为链表的名字.Redis的list类型其实就是一个每个子元素都是string类型的双向链表.可以通过push.pop操作从链表的头部或者尾部添加删除元素,这样list既可以作为栈,也可以作为队列. 栈和队列的特性    栈:先进后出:队列:先进先出. 1.    lpush    为链表的头部添加字符串元素 格式:    lpush    mylist1    "al

Redis 笔记与总结2 String 类型和 Hash 类型

Linux 版本信息: cat /etc/issue 或cat /etc/redhat-release(Linux查看版本当前操作系统发行版信息) CentOS release 6.6 (Final) (一)String 类型 [定义]string 是最简单的类型,你可以理解成与 Memcached 是一模一样的类型,一个 key 对应一个 value,其上支持的操作与 Memcached 的操作类似.但它的功能更丰富. string 类型是二进制安全的.意思是 redis 的 string 可

点滴记录——学习Redis笔记

转载请说明出处:http://blog.csdn.net/cywosp/article/details/39701409 Redis 默认端口6379 Redis适用场景 1. 取最新N个数据的操作 2. 排行榜应用,取TOP N操作 3. 需要精确设定过期时间的应用 4. 计数器应用 5. Uniq操作,获取某段时间所有数据排重值 6. 实时系统,反垃圾系统 7. Pub/Sub构建实时消息系统--消息的发布与订阅 8. 构建队列系统 9. 缓存 Redis数据类型 Strings类型及操作

redis 笔记03

RDB 持久化 1. RDB文件用于保存和还原Redis服务器所有数据库中的所有键值对数据. 2. SAVE命令由服务器进程直接执行保存操作,所以该命令会阻塞服务器. 3. BGSAVE令由子进程执行保存操作,所以该命令不会阻塞服务器. 4. 服务器状态中会保存所有用save选项设置的保存条件,当任意一个保存条件被满足时,服务器就自动执行BGSAVE命令. 5. RDB文件是一个经过压缩的二进制文件,由多个部分组成. 6. 对于不同类型的键值对,RDB文件会使用不同的方式来保存它们. 7. Re