`

redis数据类型之set常用操作

阅读更多
Redis的Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
Redis 中 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。
集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。

SADD key member1 [member2]  向集合添加一个或多个成员
redis 127.0.0.1:6379> sadd ids a1
(integer) 1
redis 127.0.0.1:6379> sadd ids a2
(integer) 1
redis 127.0.0.1:6379> sadd ids a3
(integer) 1
redis 127.0.0.1:6379> sadd ids a4
(integer) 1

scard获取成员个数
redis 127.0.0.1:6379> scard ids              //在上面我们添加了4个成员
(integer) 4

sdiff 返回给定集合的差集
redis 127.0.0.1:6379> sadd userIds a1
(integer) 1
redis 127.0.0.1:6379> sadd userIds a2
(integer) 1
redis 127.0.0.1:6379> sadd userIds dxc
(integer) 1
redis 127.0.0.1:6379> sadd userIds dac
(integer) 1
redis 127.0.0.1:6379> sdiff ids userIds    //注:ids和userId两个集合的差集(ids中有userIds中没有的成员们)
1) "a3"
2) "a4"

sdiffstore 把ids userIds集合的差集存贮到集合theIds 结合中
redis 127.0.0.1:6379> sdiffstore theIds ids userIds
(integer) 2
redis 127.0.0.1:6379> smembers theIds         //smembers 返回所有成员
1) "a3"
2) "a4"

sinter 求交集
redis 127.0.0.1:6379> sinter ids userIds
1) "a2"
2) "a1"

sinterstore  求ids和userIds的交集并存贮到集合theSameIds
redis 127.0.0.1:6379> sinterstore theSameIds ids userIds
(integer) 2
redis 127.0.0.1:6379> smembers theSameIds
1) "a2"
2) "a1"

sismember 判断某个元素是否为某个集合的成员
  redis 127.0.0.1:6379> sismember ids a1              //判断a1是否为集合ids的成员 是返回1 不是返回0
(integer) 1
  redis 127.0.0.1:6379> sismember ids a1cc
(integer) 0

smove source destination member
将member元素从source 集合移动到 destination 集合


spop key 移除并返回集合中的一个随机元素
redis 127.0.0.1:6379> spop ids
"a3"


求并集
redis 127.0.0.1:6379> sadd region1 xian
(integer) 1
redis 127.0.0.1:6379> sadd region1 changsha
(integer) 1
redis 127.0.0.1:6379> sadd region1 bejing
(integer) 1
redis 127.0.0.1:6379> sadd region2 bejing
(integer) 1
redis 127.0.0.1:6379> sadd region2 guangzhou
(integer) 1
redis 127.0.0.1:6379> sadd region2 shengzheng
(integer) 1
例如:求region1 和region2 的并集
redis 127.0.0.1:6379> sunion region1 region2
1) "bejing"
2) "guangzhou"
3) "xian"
4) "shengzheng"
5) "changsha"
例如:求region1 和region2 的并集并 存贮在 region集合中
redis 127.0.0.1:6379> sunionstore region region1 region2
(integer) 5
redis 127.0.0.1:6379> smembers region
1) "bejing"
2) "guangzhou"
3) "xian"
4) "shengzheng"
5) "changsha"
 
Redis Sscan 命令用于迭代集合键中的元素。

redis 127.0.0.1:6379> SADD myset1 "hello"
(integer) 1
redis 127.0.0.1:6379> SADD myset1 "hi"
(integer) 1
redis 127.0.0.1:6379> SADD myset1 "bar"
(integer) 1
redis 127.0.0.1:6379> sscan myset1 0 match h*
1) "0"
2) 1) "hello"
   2) "h1"
分享到:
评论

相关推荐

    Java操作Redis的多种数据类型

    本文将深入探讨如何使用Java操作Redis的四种主要数据类型:字符串(String)、列表(List)、哈希(Hash)和集合(Set)。 首先,我们来看**字符串类型**(String)。在Redis中,字符串是最基础的数据类型,可以...

    SpringDataRedis对Redis的数据类型的常用操作API的使用代码举例.zip

    这个压缩包文件“SpringDataRedis对Redis的数据类型的常用操作API的使用代码举例.zip”显然包含了关于如何利用Spring Data Redis进行Redis数据类型操作的示例代码。下面我们将深入探讨Spring Data Redis对Redis主要...

    Redis实战_Redis实战中文完整版_Redis快速入门_Redis数据类型及操作_Redis常用

    2. **Redis数据类型及操作**:这是Redis的核心部分,包括五大数据类型: - **字符串(String)**:最基础的数据类型,支持设置、获取、增加、减少等操作。 - **哈希(Hash)**:用于存储键值对集合,适用于存储对象。 ...

    Redis开发环境搭建及常用命令

    #### 四、Redis数据类型与操作 - **字符串(String)**: 最基本的数据类型,可用于存储单个值。 - **列表(List)**: 存储多个元素,每个元素都是一个字符串。适合用于队列、栈等应用场景。 - **集合(Set)**: 无序的、...

    Redis支持的数据类型、相关命令和功能

    ### Redis支持的数据类型及相关命令详解 #### 一、Redis简介及数据类型概述 Redis是一种开源的、基于内存的键值存储系统,同时也被广泛视为一种数据结构服务器。它支持多种数据类型,包括字符串(Strings)、列表...

    Java实现Redis的集合(set)命令操作

    Java实现Redis的集合(set)命令操作是指在Java语言中使用Redis客户端来操作Redis数据库中的集合类型数据结构。Redis是当前使用最广泛的NoSQL数据库之一,集合类型是Redis中的一种常用的数据结构。集合类型可以用来...

    redis命令大全

    字符串命令是Redis中最基础的数据类型之一,用于存储简单的键值对。 **1. SET key value** - **功能**: 设置指定键的值。 - **示例**: `SET mykey "Hello"` 设置键 `mykey` 的值为 `"Hello"`。 **2. GET key** - *...

    redis五种数据类型的使用场景

    它主要支持五种数据类型:String、Hash、List、Set、Sorted Set,每种数据类型有其独特的使用场景和适用性。 ### String(字符串类型) String是Redis中最基本的数据类型,可以包含任何数据,比如JPEG图片或者序列...

    Redis数据类型-03.docx

    Redis是一种开源的、高性能的键值存储系统,广泛应用于缓存...了解并熟练掌握这些基本数据类型及其操作命令,是使用Redis高效地处理数据的关键。在实际应用中,可以根据需求选择合适的数据结构,以优化存储和检索性能。

    Java redis五种数据类型在Java中的详细使用

    总结:本教程详细介绍了Redis的五种数据类型在Java中的应用,包括字符串、哈希、列表、集合和有序集合。通过实例代码展示了如何使用Jedis API进行增删查改操作。对于Java开发者来说,掌握这些内容对于提升项目中的...

    redis 常用命令

    本文将对Redis中的常用命令进行详细介绍,帮助读者更好地理解和掌握Redis的基本操作。 #### 连接与管理 - **QUIT**:退出当前连接。 - **AUTH password**:认证密码。 - **SELECT index**:选择指定的数据库,...

    redis常用命令集合.pdf

    1. Redis数据类型及其使用场景 - String(字符串):以key=value的形式存储数据,适用于常规计数、持久化定时任务。例如,可以作为系统内的计数器或存储数字类型数据。 - Hash(哈希):存储对象的key=value映射表...

    02_redis 数据类型.pdf

    首先,Redis数据类型可以分为五种常用类型:string、hash、list、set、sorted_set。Redis自身是一个基于内存的存储系统,其中所有的数据都是采用key:value的形式存储的。key总是字符串类型,而value则根据数据类型的...

    04次课 redis-02 常用命令.doc

    掌握 Redis 的常用命令是开发者们必须具备的技能之一。本文将对 Redis 的常用命令进行详细的解释和分析,从基本概念到高级应用皆有所涉及。 ### 1.Redis 数据类型介绍 Redis 支持五种基本数据类型,即 String、...

    redis常用命令,redis配置文件,redis持久化,redis事务,redis主从复制,jedis的使用

    Redis 提供了很多有用的命令来管理和操作数据。下面是一些常用的 Redis 命令: * SET key value:设置键值对 * GET key:获取键对应的值 * EXISTS key:检查键是否存在 * DEL key:删除键 * EXPIRE key seconds:...

    Redis 命令参考手册中文完整版chm

    一、Redis数据类型 Redis支持五种基本数据类型:字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)。这些数据类型为各种应用场景提供了灵活性和高效性。 1. 字符串(String):...

    Redis的五大数据类型之集合(Set)的总结

    Set的常用操作命令总结 图片来源:https://www.runoob.com/redis/redis-sets.html 部分命令使用实例 1.SADD、SPOP、SMEMBERS SADD key member1 [member2] 向集合key中添加一个或多个成员,成员不重复添加。如果集合...

    Redis系列之常有数据类型应用场景

    以下是对这些数据类型的简单介绍及其常用命令和应用场景。 **String** String 是 Redis 最基础的数据类型,可以存储字符串、数字等类型的数据。它的值最多可以存储 512MB。常用命令包括 `set`、`get`、`mset`、`...

    redis 缓存技术学习笔记

    - **数据类型及其操作**:Redis支持的数据类型非常丰富,包括基本的字符串类型用于存储简单的文本或数值,列表类型用于按顺序存储多个元素,集合类型用于存储不重复的元素集合,以及有序集合类型用于存储包含分数的...

    redis基础数据结构讲解

    Redis支持多种数据类型,本篇文章将对Redis的基础数据结构进行讲解,包括string(字符串)、list(列表)、set(集合)、hash(哈希)以及zset(有序集合)。掌握这些基础数据结构对使用Redis至关重要。 首先,字符...

Global site tag (gtag.js) - Google Analytics