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中文网

相关推荐
星越华夏4 分钟前
MongoDB安装实战指南
数据库·mongodb
川石课堂软件测试5 分钟前
性能测试|JMeter常用线程组设置策略
大数据·数据库·功能测试·测试工具·jmeter·mysql·单元测试
cheems95277 分钟前
[Redis] redis常见命令和String字符串解析
数据库·redis·缓存
Database_Cool_17 分钟前
企业级多模态分析计算引擎选型:阿里云 AnalyticDB MySQL 统一分析平台方案
数据库·mysql·阿里云
阿演18 分钟前
我把这个桌面数据库工具又升级了一轮:现在支持 ClickHouse,还能可视化建表和改表了
数据库·clickhouse·ai编程·数据库连接工具
J.Kuchiki18 分钟前
【PostgreSQL内核学习 —— 外部排序生成与归并】
数据库·学习·postgresql
SAP庖丁解码29 分钟前
SAP 物料凭证表详解
数据库
Jul1en_34 分钟前
【Redis】一文讲透缓存更新策略与缓存预热、穿透、雪崩、击穿
数据库·redis·缓存
189228048611 小时前
NV041固态MT29F16T08GSLCEM9-QBES:C
人工智能·算法·microsoft·缓存·性能优化
Database_Cool_1 小时前
AnalyticDB MySQL vs Apache Doris:企业级云数仓如何选型——全维度对比指南
数据库·数据仓库·mysql·阿里云