redis基本数据类型常用操作(代码片段)

把苹果咬哭 把苹果咬哭     2022-11-30     212

关键词:

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

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

一、sadd 添加一个、多个元素

将一个或多个成员元素加入到集合中,已经存在于集合的成员元素将被忽略。
若key不存在,则创建一个只包含添加的元素作成员的集合。

sadd myset hello pingguo test

若key不是集合类型时,返回一个错误。

二、smembers 查看集合

返回集合中的所有的成员。

smembers myset

三、scard 元素数量

返回集合中元素的数量。

scard myset

四、srem 移除一个、多个元素

用于移除集合中的一个或多个成员元素,不存在的成员元素会被忽略。
当key不是集合类型,返回一个错误。

srem myset hello test

五、srandmember 随机元素

用于返回集合中的一个随机元素。

srandmember myset 3

这里随机抽取3个元素,注意这里仅仅返回随机元素,而不对集合进行任何改动。

六、spop 随机移除一个、多个元素

移除集合中的指定key的一个或多个随机元素,移除后会返回移除的元素。

spop myset 2

跟上面的srandmember区别开,虽然都是随机,但是这里的spop修改了集合。

七、smove 移动元素到目标集合

smove source destination member
将指定成员 member 元素从 source 集合移动到 destination 集合。

smove myset myset2 pingguo

如果原集合不存在或不包含指定的元素,则不执行任何操作,仅返回 0。否则,移动成功。

如果目标集合里已经存在了此元素,那么命令只会移除原集合里的元素。

八、sdiff 差集

返回第一个集合与其他集合之间的差异,也可以说是第一个集合中独有的元素。

sdiff myset myset2 myset3

注意,这里差集的结果来自前面的myset

九、sinter 交集

返回给定所有给定集合的交集,当给定集合当中有一个空集时,结果也为空集。

sinter myset myset2 myset3
sinter myset myset3

这里当比较3个集合myset myset2 myset3时,myset2里跟其他2个没有任何交集,所以整个结果返回空集。

十、sunion 并集

返回给定集合的并集,不存在的集合 key 被视为空集。

sunion myset myset2 myset3

集合利用差、并、交集可以用来实现一些场景的功能。比如社交软件中,把A用户关注的所有人放到一个set里,然后将B用户的粉丝放另一个set2里。
那么A, B两个用户共同关注的人就是交集了。

redis基本数据类型常用操作(代码片段)

redis里的hash是一个string类型的field(字段)和value(值)的映射表。特别适合用于存储对象,每个hash可以存储40多亿键值对。熟悉python的童鞋可以想象成字典dict。之前的数据类型存储都是k-v这样,而hash的存储就是k-dict,dict里又... 查看详情

redis基本数据类型常用操作(代码片段)

有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。不同的是有序集合每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)... 查看详情

redis的常用命令和8大数据类型常用操作大全(代码片段)

文章目录redis基本操作命令Key(键)String(字符串)Hash(哈希)List(列表)Set(集合)sortedset(zset有序集合)HyperLogLog(基数)geospatial(地理位置)bitmap(位图)redis基本操作命令进入redis某台客户端命令redis-cli-hhost-pport-apassword启动redis进程redis-serverxxx.co... 查看详情

redis-01-笔记(代码片段)

...特殊性1.2Redis数据类型(5种常用)2、string数据类型2.1string的基本操作2.1.1Redis数据存储格式2.1.2string类型2.1.3string类型数据的基本操作2.2string的扩展操作2.2.1string类型数据的扩展操作2.2.2string类型数据操作的注意事项2.3string应 查看详情

redis-01-笔记(代码片段)

...特殊性1.2Redis数据类型(5种常用)2、string数据类型2.1string的基本操作2.1.1Redis数据存储格式2.1.2string类型2.1.3string类型数据的基本操作2.2string的扩展操作2.2.1string类型数据的扩展操作2.2.2string类型数据操作的注意事项2.3string应用场景与... 查看详情

redis学习笔记[初识redis,学习常用的5种数据类型](代码片段)

...以及常见的几种数据类型🌈3.1key键的操作📢3.1.1基本概念及常用命令📢3.1.2练习操作🌈3.2数据类型(1)String---字符串📢3.2.1基本概念及常用命令📢3.2.2练习操作🌈3.3数据类型(2)List---列表📢3.3.1基本... 查看详情

redis学习笔记[配置文件,3种新的数据类型,jedis操作](代码片段)

...f6f4;1.配置文件redis.conf🛴2.Redis的发布与订阅🌈2.1基本概念🌈2.2模拟实现🛴3.Redis6的新数据类型🌈3.1.新数据类型(1)---bitmaps📢3.1.1基本概念及常用命令📢3.1.2练习操作🌈3.2.新数据类型(2)---HyperLogLog&... 查看详情

redis--数据库常用命令大全(代码片段)

文章目录Redis特点Redis数据库相关指令1.数据库操作指令2.操作key相关指令3.String类型1.内存存储模型2.常用操作命令4.List类型1.内存存储模型2.常用操作指令5.Set类型1.内存存储模型2.常用命令6.ZSet类型1.内存模型2.常用命令7.hash类型1.... 查看详情

redis之五大数据类型介绍(代码片段)

目录redis五大数据类型1.string(字符串)特点:格式:基本操作:2.hash(哈希)特点:格式:基本操作3.list(列表)特点格式基本操作4.set(集合)特点格式基本操作5.zset(sortedset:有序集合)特点格式基本操作各个数据类型应用... 查看详情

redis数据库安装部署及基本操作!(代码片段)

RedisRedis数据库概述Redis相比于其他数据库的优点Redis安装部署Redis命令工具Redis测试工具redis-benckmarkRedis数据库数据类型String数据类型List数据类型Hash(散列)数据类型set数据类型(无序集合)SortedSet数据类型(... 查看详情

02-redis常用数据类型(代码片段)

文章目录简介概述常用数据类型String类型操作实践incr/incrbydecr/decrbyappendstrlenmset/mget小节面试分析Hash类型应用实践hset/hgethincrbyhmset/hmgethexistshdelhkeys/hvals小节面试分析List类型应用实践lpushrpushdellinsertlsetlremltrimlpoprpopllenlinde 查看详情

redis五种数据类型基本操作(代码片段)

packageredis;importorg.junit.Test;importredis.clients.jedis.Jedis;importjava.util.Collection;importjava.util.HashMap;importjava.util.List;importjava.util.Set;publicclassJedisTestprivatestaticJedisjed 查看详情

redis数据库安装部署及基本操作!(代码片段)

RedisRedis数据库概述Redis相比于其他数据库的优点Redis三种集群模式Redis主从复制流程Redis持久化RDB持久化AOF持久化Redis安装部署Redis命令工具Redis测试工具redis-benckmarkRedis数据库数据类型String数据类型List数据类型Hash(散列)... 查看详情

redis详解(代码片段)

...操作的命令<2>对key的常用操作命令<3>Redis的五大数据类型<4>五大数据类型的常用操作命令3.1String类型3.2List类型3.3set类型3.4Hash类型3.5Zset类型3.Redis的内存分配4.Redis的淘汰策略5.Redis的持久 查看详情

redis详解(代码片段)

...操作的命令<2>对key的常用操作命令<3>Redis的五大数据类型<4>五大数据类型的常用操作命令3.1String类型3.2List类型3.3set类型3.4Hash类型3.5Zset类型3.Redis的内存分配4.Redis的淘汰策略5.Redis的持久 查看详情

redis基本操作(代码片段)

解决mysql的问题:查询的速度把数据存储到内存中不需要提前定义好字段NoSQL分类:1.memcache问题:-数据存放到内存,不能落地,持久化-支持数据类型太少,只支持字符串2.MongoDB-数据存放到内存,解决了数据的持久化-支持多种数... 查看详情

golang常用库包:缓存redis操作库go-redis使用(03)-高级数据结构和其它特性(代码片段)

...数据结构操作和其它特性第一篇:go-redis使用,介绍Redis基本数据结构和其他特性,以及go-redis连接到Redishttps://www.cnblogs.com/jiujuan/p/17207166.html第二篇:go-redis使用,Redis5种基本数据类型操作https://www.cnblogs.com/jiujuan/p/17215125.html第三... 查看详情

redis的常用命令(代码片段)

...种stream的类型。暂且先不说,以后会新开文章具体讲解。基本知识:数据类型不支持嵌套,即所有的类型的元素只能是字符串,不能是散列和集合或者有序集合。除了字符串之外 查看详情