redis学习(七)
时间:2022-07-24
本文章向大家介绍redis学习(七),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
hash(哈希)
Map集合,key-map! 时候这个值是一个map集合! 本质和String类型没有太大区别,还是一个简单的 key-vlaue!
127.0.0.1:6666> hset hash u1 cxy # 设置单个值
(integer) 1
127.0.0.1:6666> hmset hash u2 ccc u3 sss # 设置多个值
OK
127.0.0.1:6666> hmget hash u1 u2 # 获取多个值
1) "cxy"
2) "ccc"
127.0.0.1:6666> hgetall hash # 获取所有值
1) "u1"
2) "cxy"
3) "u2"
4) "ccc"
5) "u3"
6) "sss"
127.0.0.1:6666> hdel hash u1 # 删除指定值
(integer) 1
127.0.0.1:6666> hgetall hash
1) "u2"
2) "ccc"
3) "u3"
4) "sss"
# hlen
127.0.0.1:6666> hmset hash u1 cxy u4 iii
OK
127.0.0.1:6666> hgetall hash
1) "u2"
2) "ccc"
3) "u3"
4) "sss"
5) "u1"
6) "cxy"
7) "u4"
8) "iii"
127.0.0.1:6666> hlen hash # 获取hash的长度
(integer) 4
# 判断set集合中是否存在某个值
127.0.0.1:6666> hexists hash u1
(integer) 1
127.0.0.1:6666> hexists hash 11
(integer) 0
# 只获取所有的key,和所有的value
127.0.0.1:6666> hkeys hash
1) "u2"
2) "u3"
3) "u1"
4) "u4"
127.0.0.1:6666> hvals hash
1) "ccc"
2) "sss"
3) "cxy"
4) "iii"
# 指定增量 hincrby
127.0.0.1:6666> hset hash u5 5
(integer) 1
127.0.0.1:6666> hincrby hash u5 10
(integer) 15
127.0.0.1:6666> hincrby hash u5 -10
(integer) 5
127.0.0.1:6666> hsetnx hash u6 122 # 不存在才会新增成功。
(integer) 1
127.0.0.1:6666> hsetnx hash u1 11
(integer) 0
hash变更的数据 user name age,尤其是是用户信息之类的,经常变动的信息! hash 更适合于对象的 存储,String更加适合字符串存储!
zset(有序集合)
在set的基础上,增加了一个类似于id的属性
127.0.0.1:6666> zadd zset 1 one # 增加一个,或多个
(integer) 1
127.0.0.1:6666> zadd zset 2 two 3 three
(integer) 2
127.0.0.1:6666> zrange zset 0 -1 # 查看所有zset
1) "one"
2) "two"
3) "three"
# zset排序
127.0.0.1:6666> zadd zset 2500 xiaobai
(integer) 1
127.0.0.1:6666> zadd zset 5000 zhangsan
(integer) 1
127.0.0.1:6666> zadd zset 500 cuixiaoyan
(integer) 1
127.0.0.1:6666> zrangebyscore zset -inf +inf # 从小到大进行排序,升序。
1) "cuixiaoyan"
2) "xiaobai"
3) "zhangsan"
127.0.0.1:6666> zrevrange zset 0 -1 # 从大到小进行排序,降序。
1) "zhangsan"
2) "xiaobai"
3) "cuixiaoyan"
127.0.0.1:6666> zrangebyscore zset -inf +inf withscores # 升序,并显示类似id的值。
1) "cuixiaoyan"
2) "500"
3) "xiaobai"
4) "2500"
5) "zhangsan"
6) "5000"
127.0.0.1:6666> zrangebyscore zset -inf 2500 withscores # 最大不超过两千五的。
1) "cuixiaoyan"
2) "500"
3) "xiaobai"
4) "2500"
# 移除元素rem
127.0.0.1:6666> zrange zset 0 -1 # 查看zset中所有值
1) "cuixiaoyan"
2) "xiaobai"
3) "zhangsan"
127.0.0.1:6666> zrem zset zhangsan # 删除指定值
(integer) 1
127.0.0.1:6666> zrange zset 0 -1
1) "cuixiaoyan"
2) "xiaobai"
127.0.0.1:6666> zcard zset # 获取个数
(integer) 2
127.0.0.1:6666> zadd zset 1 c 2 x 3 y
(integer) 3
127.0.0.1:6666> zcount zset 13
# 获取指定区间
127.0.0.1:6666> zadd zset 1 c 2 x 3 y
(integer) 3
127.0.0.1:6666> zcount zset 1 3
(integer) 3
127.0.0.1:6666> zcount zset 1 2
(integer) 2
案例思路:set 排序 存储班级成绩表,工资表排序! 普通消息,1, 重要消息 2,带权重进行判断! 排行榜应用实现,取Top N 测试!
- 声音分类的迁移学习
- 【死磕Java并发】—– J.U.C之AQS:CLH同步队列
- 使用Python完成你的第一个学习项目
- CA,给了数据库,给了机器,为啥也扩不了容?
- 如何使用Anaconda设置机器学习和深度学习的Python环境
- MQ,互联网架构解耦神器
- 预测随机机器学习算法实验的重复次数
- 服务化了,没想到耦合更加严重?
- 如何在Python中扩展LSTM网络的数据
- 使用Keras的Python深度学习模型的学习率方案
- 全球电脑手机无一幸免,英特尔CPU“漏洞事件”到底多严重?
- 评估Keras深度学习模型的性能
- Python机器学习的练习二:多元线性回归
- 熔断器 Hystrix 源码解析 —— 命令合并执行
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 布尔型盲注的PY交易
- 一文详解「队列」,手撸队列的3种方法!
- 代理模式
- Swift:Lable 高度计算误差
- 基于python检查SSL证书到期情况代码实例
- Python搭建Keras CNN模型破解网站验证码的实现
- PyCharm 在Windows的有用快捷键详解
- Python 自动化测试(三): pytest 参数化测试用例构建
- 基于Android平台实现拼图小游戏
- kotlin项目加入Glide图片加载库并使用GlideApp的方法
- Android实现百分比下载进度条效果
- 实验2 OpenGL交互
- 深入了解OkHttp3之Interceptors
- 实验3.1 直线光栅化(键盘交互版)
- 150行Python代码实现带界面的数独游戏