redis 命令大全整理
http://doc.redisfans.com/
原网址
Redis 命令分类
Key(键)
Key(键)命令
- exists/del/keys/type/scan
- object/move/dump/migrate
- ttl/pttl/persist/expireat/pexpireat/expire/pexpire
- rename/renamenx
- sort/randomkey/restore
exists
语法:exists key [key ...] 检查一个或多个 key 是否存在,返回存在的 key 数量,时间复杂度为 o(n),n 为检查的 key 数量。
示例:
redis> exists name
(integer) 1
redis> exists name type
(integer) 2del
语法:del key [key ...] 删除单个列表、集合、有序集合或哈希表类型的 key ,时间复杂度为 o(m),m 为以上数据结构内的元素数量。
示例:
redis> del name
(integer) 1
redis> del name type website
(integer) 3keys
语法:keys pattern 查找所有符合给定模式的 key,模式支持通配符(*、? 等),返回匹配的 key 列表,时间复杂度为 o(n),n 为数据库中 key 的数量。
示例:
redis> keys n*
1) "name"
2) "nickname"type
语法:type key 返回 key 的值类型,如 string、hash、list 等,时间复杂度为 o(1)。
示例:
redis> type name
stringscan
语法:scan cursor [match pattern] [count count] 以游标方式迭代数据库中的 key,返回游标和 key 列表,时间复杂度为 o(n),n 为数据库中 key 的数量。
示例:
redis> scan 0
1) "0"
2) 1) "name"2) "type"
object
语法:object subcommand [arguments ...] 查询和操作 key 对应对象的底层实现细节,如内存使用、编码方式等,时间复杂度根据子命令不同而不同。
示例:
redis> object encoding name
"embstr"move
语法:move key db 将 key 移动到指定数据库,返回 1 表示成功,0 表示失败,时间复杂度为 o(1)。
示例:
redis> move name 1
(integer) 1dump
语法:dump key 返回 key 的序列化值,用于数据迁移,时间复杂度为 o(m),m 为 key 对应值的元素数量。
示例:
redis> dump name
"\x80\x04\x95\x03\x00\x00\x00\x00\x00\x00\x00\x8c\x04name\x94."migrate
语法:migrate host port key destination-db timeout [copy] [replace] [keys key ...] 将一个或多个 key 从当前实例迁移到目标实例,时间复杂度为 o(m),m 为 key 对应值的元素数量。
示例:
redis> migrate 192.168.1.100 6379 name 0 5000
okttl
语法:ttl key 返回 key 的剩余过期时间(秒),负值表示 key 不存在或没有过期时间,时间复杂度为 o(1)。
示例:
redis> ttl name
(integer) 300pttl
语法:pttl key 返回 key 的剩余过期时间(毫秒),负值表示 key 不存在或没有过期时间,时间复杂度为 o(1)。
示例:
redis> pttl name
(integer) 300000persist
语法:persist key 移除 key 的过期时间,返回 1 表示成功,0 表示 key 不存在或没有过期时间,时间复杂度为 o(1)。
示例:
redis> persist name
(integer) 1expireat
语法:expireat key timestamp 为 key 设置过期时间戳(秒级时间戳),返回 1 表示成功,0 表示 key 不存在或过期时间未设置,时间复杂度为 o(1)。
示例:
redis> expireat name 1622589600
(integer) 1pexpireat
语法:pexpireat key milliseconds-timestamp 为 key 设置过期时间戳(毫秒级时间戳),返回 1 表示成功,0 表示 key 不存在或过期时间未设置,时间复杂度为 o(1)。
示例:
redis> pexpireat name 1622589600000
(integer) 1expire
语法:expire key seconds 为 key 设置过期时间(秒),返回 1 表示成功,0 表示 key 不存在或过期时间未设置,时间复杂度为 o(1)。
示例:
redis> expire name 300
(integer) 1pexpire
语法:pexpire key milliseconds 为 key 设置过期时间(毫秒),返回 1 表示成功,0 表示 key 不存在或过期时间未设置,时间复杂度为 o(1)。
示例:
redis> pexpire name 300000
(integer) 1rename
语法:rename key newkey 将 key 重命名为 newkey,若 newkey 已存在则覆盖,时间复杂度为 o(1)。
示例:
redis> rename name username
okrenamenx
语法:renamenx key newkey 只有 newkey 不存在时才将 key 重命名为 newkey,返回 1 表示成功,0 表示失败,时间复杂度为 o(1)。
示例:
redis> renamenx name username
(integer) 1sort
语法:sort key [by pattern] [limit offset count] [get pattern [get pattern ...]] [asc|desc] [alpha] [store destination] 对列表、集合或有序集合的元素进行排序,返回排序后的元素列表,时间复杂度为 o(n+m log m),n 为集合中元素数量,m 为返回元素数量。
示例:
redis> sort scores
1) "30"
2) "50"
3) "10"randomkey
语法:randomkey 返回数据库中随机 key,返回随机 key,若数据库为空则返回 null,时间复杂度为 o(1)。
示例:
redis> randomkey
"website"restore
语法:restore key ttl value [replace] 使用序列化值恢复 key,可设置过期时间,时间复杂度为 o(m),m 为 key 对应值的元素数量。
示例:
redis> restore name 300 "\x80\x04\x95\x03\x00\x00\x00\x00\x00\x00\x00\x8c\x04name\x94."
ok
String(字符串)
- strlen/append
- bitop/bitcount
- incr/incrby/decr/decrby/incrbyfloat
- set/get/mset/mget/setbit/getbit/getset
- setex/setnx/msetnx/psetex
- setrange/getrange
strlen
语法:strlen key 获取 key 所储存的字符串值的长度,返回长度值,时间复杂度为 O(1)。
示例:
redis> set name "John"
OK
redis> strlen name
(integer) 4append
语法:append key value 将 value 追加到 key 所存储的字符串值的末尾,返回字符串的新长度,时间复杂度为 O(1)。
示例:
redis> append name " Smith"
(integer) 10
redis> get name
"John Smith"bitop
语法:bitop operation destkey key [key ...] 对一个或多个 key 的二进制位进行位运算,存储结果于 destkey ,返回结果字符串的长度,时间复杂度为 O(N),N 为输入字符串中最大的长度。
示例:
redis> set bitkey1 "\x01"
OK
redis> set bitkey2 "\x02"
OK
redis> bitop or bitkey_or bitkey1 bitkey2
(integer) 1bitcount
语法:bitcount key [start end] 计算 key 所储存的字符串中,值为 1 的比特位的数量,可指定范围,返回计数结果,时间复杂度为 O(N),N 为字符串长度。
示例:
redis> set binary "\x01\x02\x03"
OK
redis> bitcount binary
(integer) 8incr
语法:incr key 将 key 所储存的值加 1 ,若值不是整数则报错,返回结果值,时间复杂度为 O(1)。
示例:
redis> set count 10
OK
redis> incr count
(integer) 11incrby
语法:incrby key increment 将 key 所储存的值加上指定的 increment ,若值不是整数则报错,返回结果值,时间复杂度为 O(1)。
示例:
redis> set count 10
OK
redis> incrby count 5
(integer) 15incrbyfloat
语法:incrbyfloat key increment 将 key 所储存的值加上指定的浮点数 increment ,返回结果值,时间复杂度为 O(1)。
示例:
redis> set count 10.5
OK
redis> incrbyfloat count 2.3
"12.8"decr
语法:decr key 将 key 所储存的值减 1 ,若值不是整数则报错,返回结果值,时间复杂度为 O(1)。
示例:
redis> set count 10
OK
redis> decr count
(integer) 9decrby
语法:decrby key decrement 将 key 所储存的值减去指定的 decrement ,若值不是整数则报错,返回结果值,时间复杂度为 O(1)。
示例:
redis> set count 10
OK
redis>
相关文章:
redis 命令大全整理
http://doc.redisfans.com/ 原网址 Redis 命令分类 Key(键) Key(键)命令 exists/del/keys/type/scanobject/move/dump/migratettl/pttl/persist/expireat/pexpireat/expire/pexpirerename/renamenxsort/randomkey/restoreexists 语法:exists key [key ...] 检查一个或多…...

实景三维建模软件应用场景(众趣科技实景三维建模)
实景三维建模软件应用场景概述 实景三维建模软件,作为数字化时代的重要工具,不仅能够真实、立体、时序化地反映和表达物理世界,还为国家的基础设施建设和数字化发展提供了有力的支撑。 在测绘与地理信息领域,实景三维建模软件是构…...
Mac M系列 安装 jadx-gui
安装 Homebrew在终端中执行以下命令(需管理员密码): 安装 Homebrew(官方源) /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"国内用户可用镜像源加速&…...
软考 系统架构设计师系列知识点之杂项集萃(56)
接前一篇文章:软考 系统架构设计师系列知识点之杂项集萃(55) 第91题 商业智能关注如何从业务数据中提取有用的信息,然后采用这些信息指导企业的业务开展。商业智能系统主要包括数据预处理、建立()、数据分…...
Ubuntu20.04 搭建Kubernetes 1.28版本集群
环境依赖 以下操作,无特殊说明,所有节点都需要执行 安装 ssh 服务安装 openssh-server复制代码 sudo apt-get install openssh-server修改配置文件复制代码 vim /etc/ssh/sshd_config找到配置项 复制代码 LoginGraceTime 120 PermitRootLogin prohibit-password StrictModes…...

【Linux】基础指令(Ⅱ)
目录 1. mv指令 2. cat指令 3.echo指令 补:输出重定向 4. more指令 5. less指令 6. head指令和tail指令 7.date指令 时间戳: 8. cal指令 9. alias指令 10.grep指令 1. mv指令 语法:mv [选项]... 源文件/目录 目标文件/目录 …...
RAG之大规模解析 PDF 文档全流程实战
PDF 文档在商业、学术和政府领域无处不在,蕴含着大量宝贵信息。然而,从 PDF 中提取结构化数据却面临着独特的挑战,尤其是在处理数千甚至数百万个文档时。本指南探讨了大规模解析 PDF 的策略和工具。 PDF解析挑战 PDF 的设计初衷是为了提供一致的视觉呈现,而非数据提取。这…...
vue-ganttastic甘特图label标签横向滚动固定方法
这个甘特图之前插件里,没有找到能固定label标签在屏幕上的办法,用css各种办法都没有实现,所以我我直接手写定位,用js监听滚动条滚动的距离,然后同步移动甘特图label标签,造成一种定位的错觉,以下…...
AcroForm JavaScript Promise 对象应用示例: 异步加载PDF文件
这段代码演示了在Adobe Acrobat DC Pro 的 JavaScript 环境中如何使用 Promise 对象处理异步操作。具体功能是: 定义了一个loadFile函数,模拟异步加载PDF文件的操作使用Promise对象封装异步操作,提供成功(resolve)和失败(reject)两种状态通过…...
MySQL 8.0 OCP 1Z0-908 题目解析(2)
题目005 Choose two. Which two actions can obtain information about deadlocks? □ A) Run the SHOW ENGINE INNODB MUTEX command from the mysql client. □ B) Enable the innodb_status_output_locks global parameter. □ C) Enable the innodb_print_all_deadlock…...

【ios越狱包安装失败?uniapp导出ipa文件如何安装到苹果手机】苹果IOS直接安装IPA文件
问题场景: 提示:ipa是用于苹果设备安装的软件包资源 设备:iphone 13(未越狱) 安装包类型:ipa包 调试工具:hbuilderx 问题描述 提要:ios包无法安装 uniapp导出ios包无法安装 相信有小伙伴跟我一样&…...

【嵌入模型与向量数据库】
目录 一、什么是向量? 二、为什么需要向量数据库? 三、向量数据库的特点 四、常见的向量数据库产品 FAISS 支持的索引类型 vs 相似度 五、常见向量相似度方法对比 六、应该用哪种 七、向量数据库的核心逻辑 🔍 示例任务:…...

【东枫科技】使用LabVIEW进行NVIDIA CUDA GPU 开发
文章目录 工具包 CuLab - LabVIEW 的 GPU 工具包特性和功能功能亮点类似 LabVIEW 的 GPU 代码开发支持的功能数值类型和维数开发系统要求授权售价 工具包 CuLab - LabVIEW 的 GPU 工具包 CuLab 是一款非常直观易用的 LabVIEW 工具包,旨在加速 Nvidia GPU 上的计算密…...

基于策略的强化学习方法之策略梯度(Policy Gradient)详解
在前文中,我们已经深入探讨了Q-Learning、SARSA、DQN这三种基于值函数的强化学习方法。这些方法通过学习状态值函数或动作值函数来做出决策,从而实现智能体与环境的交互。 策略梯度是一种强化学习算法,它直接对策略进行建模和优化,…...

1.Redis-key的基本命令
(一)Redis的基本类型 String,List,Set,Hash,Zset 三种特殊类型:geospatial(地理空间数据)、hyperloglog[基数估算(去重计数)]、bitmaps(位图&…...
JavaScript 中级进阶技巧之map函数
作为一名初级 JavaScript 开发者,你可能已经熟悉了基础语法、变量和简单的循环。但要从初级迈向中级,掌握一些高效、优雅的编码技巧是关键。其中,map 函数是中级开发者常用的工具,它不仅能简化代码,还能提升代码的可读…...

PROFIBUS DP转ModbusTCP网关模块于污水处理系统的成功应用案例解读
在当今的工业生产领域,众多企业在生产过程中会产生大量工业废水。若这些废水未经处理直接排放,将会引发严重的工业污染问题。因此,借助科技手段对污水进行有效处理显得尤为重要。在一个污水处理系统中,往往包含来自不同厂家、不同…...
Java实现桶排序算法
1. 桶排序原理图解 桶排序是一种基于分桶思想的非比较排序算法,适用于数据分布较为均匀的场景。其核心思想是将数据分散到有限数量的“桶”中,每个桶再分别进行排序(通常使用插入排序或其他简单的排序算法)。以下是桶排序的步骤&a…...
《Effective Python》第2章 字符串和切片操作——深入理解 Python 中 __repr__ 与 __str__
引言 本文基于学习《Effective Python》第三版 Chapter 2: Strings and Slicing 中的 Item 12: Understand the Difference Between repr and str When Printing Objects 后的总结与延伸。在 Python 中,__repr__ 和 __str__ 是两个与对象打印密切相关的魔术方法&am…...

电脑开机提示按f1原因分析及解决方法(6种解决方法)
经常有网友问到一个问题,我电脑开机后提示按f1怎么解决?不管理是台式电脑,还是笔记本,都有可能会遇到开机需要按F1,才能进入系统的问题,引起这个问题的原因比较多,今天小编在这里给大家列举了比较常见的几种电脑开机提示按f1的解决方法。 电脑开机提示按f1原因分析及解决…...

复现:DemoGen 用于数据高效视觉运动策略学习的 合成演示生成 (RSS) 2025
https://github.com/TEA-Lab/DemoGen?tabreadme-ov-file 复现步骤很简单,按照readme配置好conda环境即可运行。 运行: cd demo_generation bash run_gen_demo.sh 等待生成: 查看data文件夹...
Nginx核心功能及同类产品对比
Nginx 作为一款高性能的 Web 服务器和反向代理工具,凭借其独特的架构设计和丰富的功能,成为互联网基础设施中不可或缺的组件。以下是其核心功能及与同类产品(如 HAProxy、LVS)的对比优势: 一、Nginx 核心功能 高性能架…...

本地部署firecrawl的两种方式,自托管和源码部署
网上资料很多 AI爬虫黑科技 firecrawl本地部署-CSDN博客 源码部署 前提条件本地安装py,node.js环境,嫌弃麻烦直接使用第二种 使用git或下载压缩包 git clone https://github.com/mendableai/firecrawl.git 设置环境参数 cd /firecrawl/apps/api 复制环境参数 …...

2023年12月中国电子学会青少年软件编程(Python)等级考试试卷(六级)答案 + 解析
青少年软件编程(Python)等级考试试卷(六级) 分数:100 题数:38 一、单选题(共25题,共50分) 1. 运行以下程序,输出的结果是?( ) class A(): …...
spark:map 和 flatMap 的区别(Scala)
场景设定 假设有一个包含句子的 RDD: scala val rdd sc.parallelize(List("Hello World", "Hi Spark")) 目标是:将每个句子拆分成单词。 1. 用 map 的效果 代码示例 scala val resultMap rdd.map(sentence > sentence…...

Spring @Lazy注解详解
文章目录 Lazy注解主要作用工作原理使用方法注意事项总结 Lazy注解主要作用 首先,让我们看看Lazy注解的源码,截图如下: 源码注释翻译如下 通过源码,我们可以看到:Lazy注解是一个标记注解,用于标记 bean会…...
关于推送后台的webapi demo
文章目录 目录 系列文章目录 文章目录 前言 一、如何实现推送的思考 二、使用步骤 1.引入库 2.连接方法 3. 发送数据 4.结束时发的消息 5.相关的类 总结 前言 手机app一般都有接收消息推送的功能,比如美团app 点的外卖订单推送,那么对于后台如何将消息推…...

中国品牌日 | 以科技创新为引领,激光院“风采”品牌建设结硕果
品牌,作为企业不可或缺的隐形财富,在当今竞争激烈的市场环境中,其构建与强化已成为推动企业持续繁荣的关键基石。为了更好地保护自主研发产品,激光院激光公司于2020年3月7日正式注册“风采”商标,创建拥有自主知识产权…...

GNU Screen 曝多漏洞:本地提权与终端劫持风险浮现
SUSE安全团队全面审计发现,广泛使用的终端复用工具GNU Screen存在一系列严重漏洞,包括可导致本地提权至root权限的缺陷。这些问题同时影响最新的Screen 5.0.0版本和更普遍部署的Screen 4.9.x版本,具体影响范围取决于发行版配置。 尽管GNU Sc…...

05.three官方示例+编辑器+AI快速学习three.js webgl - animation - skinning - ik
本实例主要讲解内容 这个Three.js示例展示了**反向运动学(Inverse Kinematics, IK)**在3D角色动画中的应用。通过加载一个角色模型,演示了如何使用IK技术实现自然的肢体运动控制,如手部抓取物体的动作。 核心技术包括: CCD反向运动学求解器…...