Redis的基础指令

Redis的基础指令

1. KEYS --- 谨慎使用

复制代码
通过通配符进行匹配:
1. h?llo 匹配 hello,hallo,hxllo
2. h*llo 匹配 hllo, heeeello
3. h[ae]llo 匹配 hallo, hello 
4. h[^e]llo 匹配 除了 hello
5. h[a-e] 匹配 hello ---匹配从a到e的闭区间 
🌟特别注意3和5的区别

语法:

复制代码
KEYS pattern

返回值:

复制代码
匹配pattern的所有key

示例:

复制代码
redis> MSET firstname Jack lastname Stuntman age 35
"OK"

redis> KEYS *name*
1) "firstname"
2) "lastname"

redis> KEYS a??
1) "age"

redis> KEYS *
1) "age"
2) "firstname"
3) "lastname"
  • 为什么慎重使用呢?
  • 因为当数据很多时,会占用这个线程去查询,而堵塞了其他的指令
  • 🌟尤其是 **KEYS *** 这条语句,和 SELECT * FROM table; 一样不能随便使用在数据很多的情况下

2. EXISTS

复制代码
判断某个 key 是否存在

语法:

bash 复制代码
EXISTS key [key ...] 

这个 里面的东西可以加也可以不加,在这里可以一次查询多个key是否存在,批量查询,减少网络开销

返回值:

复制代码
存在key的个数,没有则返回0

示例:

复制代码
redis> SET key1 "Hello"
"OK"

redis> EXISTS key1
(integer) 1

redis> EXISTS nosuchkey
(integer) 0

redis> SET key2 "World"
"OK"

redis> EXISTS key1 key2 nosuchkey
(integer) 2 

3. DEL

复制代码
删除指定的key

语法:

复制代码
DEL key [key ...]

返回值:

复制代码
删除key的个数

示例:

复制代码
redis> SET key1 "Hello"
"OK"

redis> SET key2 "World"
"OK"

redis> DEL key1 key2 key3
(integer) 2

4. EXPIRE

复制代码
为指定的key添加秒级的过期时间

语法:

复制代码
EXPIRE key seconds

返回值:

复制代码
1:设置成功
0:设置失败

示例:

复制代码
redis> SET mykey "Hello"
"OK"

redis> EXPIRE mykey 10
(integer) 1

redis> TTL mykey
(integer) 10

5. TTL (Time To Live)

复制代码
获取指定key的过期时间,秒级

语法:

复制代码
TTL key

返回值:

复制代码
1. 剩余的过期时间
2. -1表示没有关联过期时间
3. -2表示key不存在,有可能本来就不存在这个key,有可能过期了,总的来说都是key不存在了

示例:

复制代码
redis> SET mykey "Hello"
"OK"

redis> EXPIRE mykey 10
(integer) 1

redis> TTL mykey
(integer) 10
  • EXPIRE 和 TTL 命令都有对应的支持毫秒为单位的版本:PEXPIRE 和 PTTL

6. TYPE

复制代码
返回key对应的数据类型

语法:

复制代码
TYPE key

返回值:

复制代码
none, string, list, set, zset, hash, stream ...

示例:

复制代码
redis> SET key1 "value"
"OK"

redis> LPUSH key2 "value"
(integer) 1

redis> SADD key3 "value"
(integer) 1

redis> TYPE key1
"string"

redis> TYPE key2
"list"

redis> TYPE key3
"set"
相关推荐
无小道1 天前
Redis——集群
redis·集群
用户6757049885021 天前
Redis 分布式锁的 5个坑,真的是又大又深!!
redis·后端
spider_xcxc1 天前
Redis 深度实践:安全管控、性能压测与持久化分析(二)
运维·前端·redis·云计算·bootstrap·运维开发
spider_xcxc2 天前
Redis 数据库高质量实践指南(一)
运维·数据库·redis·oracle·云计算
YOU OU2 天前
Redis初识
数据库·redis·缓存
livemetee2 天前
【关于redis高性能,高可用处理】
数据库·redis·缓存
Omics Pro2 天前
首个针对生物医药LLM智能体的全流程过程级评测框架
数据库·人工智能·windows·redis·量子计算
栈溢出了2 天前
Redis 消息队列笔记:List 与 Pub/Sub
redis·笔记·list
Devin~Y2 天前
抖音级短视频推荐与直播带货平台面试实战:从 Java 微服务到 RAG 智能客服全链路解析
java·spring boot·redis·spring cloud·kafka·agent·rag
學點2 天前
Linux ubuntu安装redis
linux·redis·ubuntu