Redis通用指令和五大基本数据类型常用指令总结
通用指令
-
keys parttern 查询key
(parttern即通配符,不是正则表达式,例如 keys a? 匹配以a开头的长度为2的key)
-
del key 删除key
-
exists key 获取key是否存在
-
type key 获取key的类型
-
expire key seconds 为指定key设置有效期,单位秒
-
pexpire key milliseconds 为指定key设置有效期,单位毫秒
-
ttl key 获取key的有效时间,单位秒
-
pttl key 获取key的有效时间,单位毫秒
-
persist key 切换key从时效性转换为永久性
-
rename key newkey
-
renamenx key newkey 改名,nx就是not exists不存在才能修改
-
select index 切换数据库
-
move key db 数据移动到另一个数据库
-
dbsize 数据库中数据总数
-
flushdb 清除当前库
-
flushall 清空所有库
string类型指令
就类似Java的字符串。
-
set key value 添加/修改数据
-
get key 获取数据
-
mset key1 value1 key2 value2 … 添加/修改多个数据
-
mget key1 key2 … 获取多个数据
-
strlen key 获取数据字符个数(字符串长度)
-
append key value 追加信息到原始信息后部(如果原始信息存在就追加,否则新建)
-
incr key 设置数值数据增加指定范围的值
-
incrby key increment
-
incrbyfloat key increment
-
decr key 设置数值数据减少指定范围的值
-
decrby key increment
-
setex key seconds value 设置数据具有指定的生命周期
-
psetex key milliseconds value
Hash类型指令
就类似Java的HashMap。在Redis中为:Map<key,Map<key,value>>。
这里主要是增删改查第二个Map中的内容,如果想删除整个对象,采用删除String类型的指令。参照上面的String指令,前面都加上h。
-
hset key field value 添加/修改数据
-
hget key field 获取key对象的field字段的数据
-
hgetall key 获取key对象的所有字段信息
-
hkeys key 获取哈希表中所有的字段名
-
hvals key 获取哈希表中所有的字段值
-
hdel key field1 [field2] 删除key对象的field1、field2字段的数据
-
hmset key field1 value1 field2 value2 … 添加/修改多个数据
-
hmget key field1 field2 … 获取多个数据
-
hlen key 获取哈希表中字段的数量
-
hexists key field 获取哈希表中是否存在指定的字段
-
hincrby key field increment 设置指定字段的数值数据增加指定范围的值
-
hincrbyfloat key field increment
List类型指令
List类型类似于Java LinkedList。按顺序处理操作,可以实现先进先出,也可以实现后进先出。
-
lpush key value1 [value2] …… 在左边添加/修改数据
-
rpush key value1 [value2] …… 在右边添加/修改数据
-
lrange key start stop 获取数据(循环变量) ,start和stop是下标,0开始,stop为-1代表到末尾
-
lindex key index 从左获取key对象的index索引处的值
-
llen key
-
lpop key 获取并弹出数据
-
rpop key
Set类型
Set类型就是Java的HashSet。特点:无序,去重,集合操作。
-
sadd key member1 [member2] 添加数据
-
smembers key 获取全部数据
-
srem key member1 [member2] 删除数据
-
scard key 获取集合数据总量
-
sismember key member 判断集合中是否包含指定数据
-
srandmember key [count] 随机获取集合中指定数量的数据
-
spop key [count] 随机获取集合中的某个数据并将该数据移出集合
-
sinter key1 [key2] 求两个集合的交、并、差集
-
sunion key1 [key2]
-
sdiff key1 [key2]
-
sinterstore destination key1 [key2] 求两个集合的交、并、差集并存储到指定集合中
-
sunionstore destination key1 [key2]
-
sdiffstore destination key1 [key2]
-
smove source destination member 将指定数据从原始集合中移动到目标集合中
Sorted_set类型(ZSet)
在Set的基础上添加了一个排序字段。
-
zadd key score1 member1 [score2 member2] 添加数据
-
zrange key start stop [WITHSCORES] 正序获取全部数据
-
zrevrange key start stop [WITHSCORES] 逆序获取全部数据
-
zrem key member [member ...] 删除数据
-
zrangebyscore key min max [WITHSCORES] [LIMIT] (这个命令的作用是返回有序集合 key 中分数在 min 和 max 之间的所有成员,按照分数从小到大的顺序排列。如果指定了 WITHSCORES 选项,那么还会返回每个成员的分数值。如果指定了 LIMIT 选项,那么还可以限制返回的成员数量和偏移量。 )
-
zrevrangebyscore key max min [WITHSCORES] 从大到小排序,并返回每个成员的分数值。
-
zremrangebyrank key start stop 条件删除数据
-
zremrangebyscore key min max
-
zcard key start stop 获取集合数据总量
-
zcount key min max
-
zrank key member 排序后,获取数据对应的索引(排名),从0开始
-
zrevrank key member
-
zscore key member score值获取与修改
-
zincrby key increment member
-
zinterstore destination numkeys key [key ...] 集合交、并操作,并存储 (numkeys 是参与运算的key的个数)
-
zunionstore destination numkeys key [key ...]
相关文章:
Redis通用指令和五大基本数据类型常用指令总结
通用指令 keys parttern 查询key (parttern即通配符,不是正则表达式,例如 keys a? 匹配以a开头的长度为2的key) del key 删除key exists key 获取key是否存在 type key 获取key的类型 expire key seconds 为指定key设置有效期,单位秒 …...

uCharts常用图表组件demo
带渐变阴影的曲线图 <view class"charts-box"><qiun-data-charts type"area" :opts"opts" :chartData"chartData" :ontouch"true":background"rgba(256,256,256,0)" /> </view>data(){return{…...

VNC:Timed out waiting for a response from the computer
VNC的服务端使用的是TigerVNC,客户端使用的是RealVNC TigerVNC按其他博客配好后,防火墙ip什么的都配了,vnc客户端怎么连都是超时。 这里建议大家可以尝试一下重启服务器。我的是CentOS的 shutdown -r now 配了2天,最后服务器重启…...
Kotlin 协程 知识点
Android 上的 Kotlin 协程 | Android Developers (google.cn) 官方网址 1.什么是协程? 我觉得协程就是kotlin中一种优雅的实现异步请求 协程(Coroutines)是一种轻量级的并发编程概念,旨在简化异步编程和并发任务的处理。它是…...

简单大方的自我介绍 PPT 格式
自我介绍是展示自己的机会,同时也是展现自信和魅力的重要时刻。通过简单大方的PPT格式,可以更好地展示自己的个性和才华。下面是一些建议,帮助你在自我介绍中展现自信和魅力。 1. 打造简洁而有吸引力的PPT布局: - 选择简洁大方的背…...

panads操作excel
panads简介 pandas是基于Numpy创建的Python包,内置了大量标准函数,能够高效地解决数据分析数据处理和分析任务,pandas支持多种文件的操作,比如Excel,csv,json,txt 文件等,读取文件之…...
【MySQL】联合查询、子查询、合并查询
这里提供了三个表: 表1: mysql> select * from class; -------------- | id | name | -------------- | 1 | 一班 | | 2 | 二班 | | 3 | 三班 | -------------- 3 rows in set (0.01 sec) 表2: mysql> select * fro…...

小程序中如何设置所服务地区的时区
在全球化的背景下,小程序除了在中国使用外,还为海外的华人地区提供服务。例如我们采云小程序为泰国、阿根廷、缅甸等国家的商家就提供过微信小程序。这些商家开通小程序,为本地的华人提供服务。但通常小程序的开发者/服务商位于中国ÿ…...

Linux环境安装mysql8.0
1个人习惯我喜欢给软件安装在/use/local下,我使用的finalshell软件,直接手动新建一个文件夹名字为mysql 2下载mysql wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz 3解压文件 tar -xvf mysql-8.0.2…...
STM32_DMA_多通道采集ADC出现错位现象
STM32_DMA_多通道采集ADC出现错位现象 问题描述: adcSensorValue[0],adcSensorValue[3],adcSensorValue[6]… //存储通道1数据 adcSensorValue[1],adcSensorValue[4],adcSensorValue[7]… //存储通道2数据 adcSensorValue[2],adcSensorValue[5],adcSensorValue[8]……...

Linux内存管理 (2):memblock 子系统的建立
前一篇:Linux内存管理 (1):内核镜像映射临时页表的建立 文章目录 1. 前言2. 分析背景3. memblock 简介3.1 memblock 数据结构3.2 memblock 接口 4. memblock 的构建过程 1. 前言 限于作者能力水平,本文可能存在谬误,因此而给读者…...

创新学习方式,电大搜题助您迈向成功之路
近年来,随着信息技术的发展,互联网在教育领域发挥的作用越来越显著。贵州开放大学作为国内首家电视大学,一直致力于创新教学模式,帮助学生更好地获取知识。在学习过程中,学生常常遇到疑难问题,而解决这些问…...
Mybatis整理
Mybatis 定义 Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,加载驱动、创建连接、创建statement等繁杂的过程,开发者开发时只需要关注如何编写SQL语句,可以严格控制sql执行性能,灵…...
pytorch定义datase多次重复采样
有的时候训练需要对样本重复抽样为一个batch,可以按如下格式定义: class TrainLoader(Dataset):def __init__(self, fns, repeat1):super(TrainLoader, self).__init__()self.length len(fns) # 数据数量self.repeat repeat # 数据重复次数def __getitem__(self,…...

自动化测试 —— Pytest fixture及conftest详解!
前言 fixture是在测试函数运行前后,由pytest执行的外壳函数。fixture中的代码可以定制,满足多变的测试需求,包括定义传入测试中的数据集、配置测试前系统的初始状态、为批量测试提供数据源等等。fixture是pytest的精髓所在,类似u…...

Nginx解析漏洞
常见的解析漏洞: IIS 5.x/6.0解析漏洞 IIS 7.0/IIS 7.5/ Nginx <0.8.3畸形解析漏洞 Nginx <8.03 空字节代码执行漏洞 Apache解析漏洞 Nginx文件解析漏洞 对于任意文件名,例如:cd.jpg在后面添加/x.php后,即可将文件作为php解析。 原理…...

【机器学习】决策树原理及scikit-learn使用
文章目录 决策树详解ID3 算法C4.5算法CART 算法 scikit-learn使用分类树剪枝参数重要属性和接口 回归树重要参数,属性及接口交叉验证代码示例 一维回归的图像绘制 决策树详解 决策树(Decision Tree)是一种非参数的有监督学习方法,…...
#基于一个小车项目的FREERTOS分析(一)系统时钟
系统时钟 //初始化延迟函数 //SYSTICK的时钟固定为AHB时钟,基础例程里面SYSTICK时钟频率为AHB/8 //这里为了兼容FreeRTOS,所以将SYSTICK的时钟频率改为AHB的频率! //SYSCLK:系统时钟频率 /* 系统定时器是一个 24bit 的向下递减的计数器&…...

ubuntu mmdetection配置
mmdetection配置最重要的是版本匹配,特别是cuda,torch与mmcv-full 本项目以mmdetection v2.28.2为例介绍 1.查看显卡算力 因为gpu的算力需要与Pytorch依赖的CUDA算力匹配,低版本GPU可在相对高的CUDA版本下运行,相反则不行 算力…...

嵌入式面试常见问题(一)
目录 1.什么情况下会出现段错误? 2.swap() 函数为什么不能交换两个变量的值 3.一个函数有六个参数 分别放在哪个区? 4.定义一个变量,赋初值和不赋初值分别保存在哪个区? 5.linux查看端口状态的命令 6.结构体中->和.的区…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
sqlserver 根据指定字符 解析拼接字符串
DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...

mac:大模型系列测试
0 MAC 前几天经过学生优惠以及国补17K入手了mac studio,然后这两天亲自测试其模型行运用能力如何,是否支持微调、推理速度等能力。下面进入正文。 1 mac 与 unsloth 按照下面的进行安装以及测试,是可以跑通文章里面的代码。训练速度也是很快的。 注意…...

ubuntu22.04有线网络无法连接,图标也没了
今天突然无法有线网络无法连接任何设备,并且图标都没了 错误案例 往上一顿搜索,试了很多博客都不行,比如 Ubuntu22.04右上角网络图标消失 最后解决的办法 下载网卡驱动,重新安装 操作步骤 查看自己网卡的型号 lspci | gre…...

高考志愿填报管理系统---开发介绍
高考志愿填报管理系统是一款专为教育机构、学校和教师设计的学生信息管理和志愿填报辅助平台。系统基于Django框架开发,采用现代化的Web技术,为教育工作者提供高效、安全、便捷的学生管理解决方案。 ## 📋 系统概述 ### 🎯 系统定…...
【WebSocket】SpringBoot项目中使用WebSocket
1. 导入坐标 如果springboot父工程没有加入websocket的起步依赖,添加它的坐标的时候需要带上版本号。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dep…...
6️⃣Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙
Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙 一、前言:离区块链还有多远? 区块链听起来可能遥不可及,似乎是只有密码学专家和资深工程师才能涉足的领域。但事实上,构建一个区块链的核心并不复杂,尤其当你已经掌握了一门系统编程语言,比如 Go。 要真正理解区…...