Redis 常用命令

Redis 通用命令


文章目录


get & set

set key value

第一个是 key ,第二个是 value,输入 set 时,就已经提示了是这个 key value 结构


get key

通过 key 获取 value ,查询不存在的key时,查询出来的是nil,也就是 null 的意思


操作不同的数据结构 ,就会有不同的命令,全局命令就是能搭配任意一个数据结构来使用的命令


keys

返回所有满足样式(pattern)的key ,-----通过一些特殊符号(通配符 )来描述 key 的模样,匹配上述模样的 key 就能被 查询 出来
时间复杂度 O(n)

  • **h?llo 匹配 hello,hallo...(?匹配任意 一个 字符)
  • h*llo 匹配 hllo,heeeello...(*匹配0个或者多个 任意字符)
  • h[ae]llo 匹配 hallo~hello([ae]表示只能匹配到 a ~ e,即 a b c d e,相当于固定选项**)**
  • h[^e]llo 匹配 hallo,hbllo...( [^e]** 表示只有 e 匹配不了,别的都行)**
  • h[a-b]llo 匹配 hallo 和 hbllo(匹配 a-b 的范围,并且是 闭区间)


测试
h?llo

h*llo

h[abe]llo

h[^e]llo

h[a-e]llo


exists

EXISTS key [key .....]

判定 key 是否存在
返回值: key 存在的个数
时间复杂度 O(1)


del(delete)

DEL key [key ...]

可以删除一个或者多个 key
时间复杂度:O(1)
redis 主要的应用场景,就是作为 缓存 ,redis里存的只是热点数据,全量数据在mysql数据库中,如果del误删了几个,影响不会很大


integer 2 是因为 aaa 不存在


expire

EXPIRE key seconds

给指定的 key 设置 秒级 过期时间
pexpire key 毫秒级
时间复杂度:O(1)
返回值:1成功,0失败


TTL

TTL key

获取指定key的过期时间,秒级
PTTL 毫秒级
时间复杂度:O(1)
返回值:剩余过期时间 / -1 表示没有关联过期时间 / -2 表示key不存在


键的过期机制

定期删除

过期删除

假设这个 key 已经到了过期时间,但是暂时还没有删除它,key还存在,紧接着后面一次访问正好用到了这个key
于是这次访问就会让Redis服务器触发 删除 key 的操作,同时再返回一个 nil


type

type key

返回对应 key 的数据类型
时间复杂度:O(1)
返回值:none,string,list,set,zset,hash,stream


相关推荐
ykuaile_h815 分钟前
MySQL梳理三:查询与优化
数据库·mysql
掘根30 分钟前
【Redis】string字符串
数据结构·数据库·redis
春天的菠菜2 小时前
【mysql】设置mysql数据库只读权限用户
数据库·oracle
找不到、了2 小时前
Mysql使用Canal服务同步数据->ElasticSearch
数据库·mysql·elasticsearch
宋大水3 小时前
【大作业-12】草莓成熟度检测模型,YOLO+PyQt+MySQL
数据库·深度学习·mysql·yolo·目标检测·pyqt·课程设计
回家路上绕了弯4 小时前
Redis 分布式锁源码深度解析:从原理到实现细节
redis·源码
赵_|大人4 小时前
Qt 自动无法加载数据库为空
开发语言·数据库·qt
2501_920047034 小时前
Mysql-事务
数据库·mysql·oracle
sukalot4 小时前
window显示驱动开发—将加密会话与 DirectX 视频加速器 2.0 解码器配合使用
数据库·驱动开发·音视频
笑衬人心。4 小时前
MySQL 如何优化慢查询
数据库·mysql