redis之常用Set和ZSet命令
redis五种数据类型:String,Hash,List,Set,ZSet。五种数据类型各有优点,各司其职。最后两种数据类型Set和ZSet基本上是一种,ZSet就是给Set加了个排序而已(相当于加了个属性)。
Set是通过Hash表实现,增删改的查找复杂度都是O(1)。ZSet相当于Set的升级版本。
下面直接上命令了:
Set:无序集合,通过hash table实现,添加,删除,查找复杂度都是O(1)
命令:
sadd myset hello 向myset集合添加hello元素(不能重复,重复返回0)
smembers myset 查看myset集合中所有元素
srem myset hello 删除myset中的hello元素
spop myset 从myset中随机删除一个元素
sdiff myset1 myset2 集合myset1和集合myset2的差集(1有而2没有的)
sdiffstore myset3 myset1 myset2 将myset1和myset2的差集存入myset3
sinter myset1 myset2 获取myset1和myset2的交集
sinterstore myset3 myset1 myset2 将myset1和myset2的交集存入myset3
sunion myset1 myset2 获取myset1和myset2的并集
sunionstore myset3 myset1 myset2 将myset1和myset2的并集存入myset3
smove myset1 myset2 jeyson 将jeyson元素从myset1移到myset2中
scard myset1 获取myset1中元素个数
sismember myset1 hello 测试hello是否是myset1的元素,是返回1 否则0
srandmember myset1 随机返回myset1一个元素,但不删除
ZSet:有序集合,为Set的升级版本,增加了一个顺序属性
命令:
zadd myset 1 one 向myset集合添加顺序为1的元素one
更新顺序也是这个命令 zadd myset 2 one 把one的顺序号改为2
zrange myset 0 -1 withscores 获取集合中所有元素(带序号)
zrevrange myset 0 -1 withscores 获取集合中所有元素(带序号)(降序)
zrange myset 0 -1 获取集合中所有元素(不带序号)
zrem myset one 删除集合中one元素
zincrby myset 3 three 将three的顺序号增加3(如果没有three则创建three,顺序为3)
zrank myset one 返回one的索引(不是顺序,索引从0开始)(升序后)
zrevrank myset one 返回one的索引(从大到小)(降序后)
zrangebyscore myset 2 5 withscores 获取顺序为2-5的元素
zcount myset 2 5 返回集合中顺序在2-5的元素数量
zcard myset 返回集合中所有元素个数
zremrangebyrank myset 2 5 删除指定索引区间内(2-5)的元素
zremrangebyscore myset 2 5 删除指定顺序区间内(2-5)的元素
初识redis之常用Set和ZSet命令
转自:http://blog.csdn.net/js_sky/article/details/49907763
我喜欢程序员,他们单纯、固执、容易体会到成就感;面对压力,能够挑灯夜战不眠不休;面对困难,能够迎难而上挑战自我。他
们也会感到困惑与傍徨,但每个程序员的心中都有一个比尔盖茨或是乔布斯的梦想“用智慧开创属于自己的事业”。我想说的是,其
实我是一个程序员
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了