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

相关推荐
JIngJaneIL13 小时前
篮球论坛|基于SprinBoot+vue的篮球论坛系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·篮球论坛系统
一只叫煤球的猫15 小时前
MySQL 索引的 “最左前缀原则”,用查字典的例子讲透
数据库·mysql·性能优化
一只小bit16 小时前
MySQL常用内置函数整理:提高你的查询效率
数据库·mysql·数据完整性·表约束
chxii17 小时前
ISO 8601日期时间标准及其在JavaScript、SQLite与MySQL中的应用解析
开发语言·javascript·数据库
小丁爱养花19 小时前
Redis 内部编码/单线程模型/string
数据库·redis·缓存·1024程序员节
爬山算法19 小时前
Redis(84)如何解决Redis的缓存击穿问题?
java·redis·缓存
l1t20 小时前
利用DuckDB SQL求解集合数学题
数据库·sql·算法·集合·duckdb
筵陌20 小时前
MYSQL表的操作
数据库·mysql·1024程序员节