Redis 键(Key)的命令

文章目录

set和get

设置数据已经查看数据

bash 复制代码
127.0.0.1:6379> set key hello
OK
127.0.0.1:6379> get key
"hello"

KEYS

Keys 命令用于查找所有符合给定模式 pattern 的 key

语法:

bash 复制代码
redis 127.0.0.1:6379> KEYS PATTERN

命令有效版本:1.0.0之后

时间复杂度:(N)

返回值:匹配pattern 的所有key。

返回所有满足样式(pattern)的key。⽀持如下统配样式。

样例

首先创建一些 key,并赋上对应值:

bash 复制代码
redis 127.0.0.1:6379> SET w3c1 redis
OK
redis 127.0.0.1:6379> SET w3c2 mysql
OK
redis 127.0.0.1:6379> SET w3c3 mongodb
OK

查找以 w3c 为开头的 key:

bash 复制代码
redis 127.0.0.1:6379> KEYS w3c*
1) "w3c3"
2) "w3c1"
3) "w3c2"

获取 redis 中所有的 key 可用使用 *。

bash 复制代码
redis 127.0.0.1:6379> KEYS *
1) "w3c3"
2) "w3c1"
3) "w3c2"

EXISTS

判断某个key 是否存在。

语法:

bash 复制代码
redis 127.0.0.1:6379> EXISTS KEY_NAME

命令有效版本:1.0.0 之后

时间复杂度:O(1)

返回值:key存在的个数。

样例

bash 复制代码
redis 127.0.0.1:6379> EXISTS w3cschoolcc-new-key
(integer) 0

现在我们创建一个名为 w3cschoolcc-new-key 的键并赋值,再使用 EXISTS 命令。

bash 复制代码
redis 127.0.0.1:6379> set w3cschoolcc-new-key newkey
OK
redis 127.0.0.1:6379> EXISTS w3cschoolcc-new-key
(integer) 1
redis 127.0.0.1:6379>

DEL

DEL 命令用于删除已存在的键。不存在的 key 会被忽略。

语法:

bash 复制代码
redis 127.0.0.1:6379> DEL KEY_NAME

命令有效版本:1.0.0之后

时间复杂度:O(1)返回值:删除掉的key的个数。

样例

首先,我们在 redis 中创建一个 key 并设置值。

bash 复制代码
redis 127.0.0.1:6379> SET w3ckey redis
OK

现在我们删除已创建的 key。

bash 复制代码
redis 127.0.0.1:6379> DEL w3ckey
(integer) 1

Expire

Redis Expire 命令用于设置 key 的过期时间。key 过期后将不再可用。

语法:

bash 复制代码
redis 127.0.0.1:6379> Expire KEY_NAME TIME_IN_SECONDS

命令有效版本:1.0.0之后

时间复杂度:O(1)

返回值:1表⽰设置成功。0表⽰设置失败。

样例

首先创建一个 key 并赋值:

bash 复制代码
redis 127.0.0.1:6379> SET w3ckey redis
OK

为 key 设置过期时间:

bash 复制代码
redis 127.0.0.1:6379> EXPIRE w3ckey 60
(integer) 1

TTL

Redis TTL 命令以秒为单位返回 key 的剩余过期时间。

语法:

bash 复制代码
redis 127.0.0.1:6379> TTL KEY_NAME

命令有效版本:1.0.0之后

时间复杂度:O(1)

返回值:1表⽰设置成功。0表⽰设置失败。

样例

bash 复制代码
# 不存在的 key
 
redis> FLUSHDB
OK
 
redis> TTL key
(integer) -2
 
 
# key 存在,但没有设置剩余生存时间
 
redis> SET key value
OK
 
redis> TTL key
(integer) -1
 
 
# 有剩余生存时间的 key
 
redis> EXPIRE key 10086
(integer) 1
 
redis> TTL key
(integer) 10084

键的过期机制

TYPE

Type 命令用于返回 key 所储存的值的类型。

语法:

bash 复制代码
redis 127.0.0.1:6379> TYPE KEY_NAME 

命令有效版本:1.0.0之后时间复杂度:O(1)

返回值: 返回 key 的数据类型,数据类型有:

none (key不存在)

string (字符串)

list (列表)

set (集合)

zset (有序集)

hash (哈希表)

样例:

bash 复制代码
# 字符串
 
redis> SET weather "sunny"
OK
 
redis> TYPE weather
string
 
 
# 列表
 
redis> LPUSH book_list "programming in scala"
(integer) 1
 
redis> TYPE book_list
list
 
 
# 集合
 
redis> SADD pat "dog"
(integer) 1
 
redis> TYPE pat
set

还有更多的细节可以查看redis.io,不习惯看英文的可以看看reids中文网

相关推荐
dixiuapp11 分钟前
设备维修记录系统,从数据沉淀到价值挖掘的跃迁
大数据·数据库·人工智能
horizon727417 分钟前
【Redis】Redis 分片集群搭建与故障转移实战指南
java·redis
问道飞鱼28 分钟前
【数据库知识】MySQL 多表关联高效实现指南:场景化方案与底层原理
数据库·mysql·多表关联
马克学长29 分钟前
SSM校园二手交易平台7fut7(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·校园闲置资源交易
dblens 数据库管理和开发工具36 分钟前
MySQL :5.7与8.0版创建用户与授权、密码认证插件、角色、密码过期策略
数据库·mysql·dblens·mysql创建用户·mysql设置密码·mysql用户授权
曹牧1 小时前
Oracle:字段为值列表
数据库·oracle
亮子AI1 小时前
【Prisma】如何修复(重建)已经损坏的迁移历史?
数据库·prisma
+VX:Fegn08951 小时前
计算机毕业设计|基于springboot + vue职位管理推荐系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
热爱专研AI的学妹1 小时前
【搭建工作流教程】使用数眼智能 API 搭建 AI 智能体工作流教程(含可视化流程图)
大数据·数据库·人工智能·python·ai·语言模型·流程图
DBA小马哥2 小时前
国产数据库加速替代Oracle:聚焦信创背景下的平滑迁移与性能突破
数据库·oracle