Redis常用命令

一、通用核心命令(优先级最高)

命令 核心作用 典型使用场景
EXISTS key 判断键是否存在(返回 1/0) 操作前先校验键是否存在,避免空操作
DEL key [key...] 删除一个 / 多个键 清理无效数据、缓存失效时删除键
EXPIRE key seconds 设置键的过期时间(秒) 验证码、临时缓存、会话存储(如EXPIRE token 1800
TTL key 查看键剩余过期时间 排查缓存过期问题,确认键是否即将失效
TYPE key 查看键对应值的类型 调试时确认数据类型,避免用错命令(如对 String 用 HGET)

二、字符串(String)核心命令(使用频率最高的数据类型)

命令 核心作用 典型使用场景
SET key value [NX/EX] 设置键值对(NX = 不存在才设,EX = 过期时间) 存储验证码(SET code 1234 NX EX 60)、用户昵称等
GET key 获取键的值 读取缓存的简单数据(如GET username
INCR key 数字值自增 1 访问量计数器、订单号生成(INCR visit_count
INCRBY key num 数字值自增指定数 批量计数(INCRBY visit_count 10
MSET/MGET 批量设置 / 获取键值对 减少网络 IO,批量读写(MSET a 1 b 2 / MGET a b

三、哈希(Hash)核心命令(存储对象首选)

命令 核心作用 典型使用场景
HSET key field value 设置哈希的单个字段 存储用户信息(HSET user:1 name 张三 age 20
HGET key field 获取哈希的单个字段 读取对象的某个属性(HGET user:1 name
HGETALL key 获取哈希所有字段和值 读取完整对象(HGETALL user:1
HMSET/HMGET 批量设置 / 获取哈希字段 批量更新 / 读取对象属性(HMSET user:1 email zs@test.com gender 男
HINCRBY key field num 哈希字段自增 更新对象的数字属性(HINCRBY user:1 age 1

四、列表(List)核心命令(队列 / 列表场景)

命令 核心作用 典型使用场景
LPUSH/RPUSH key value 左 / 右侧添加元素 消息队列(RPUSH msg_queue "新消息")、最新评论列表
LPOP/RPOP key 左 / 右侧弹出元素 消费消息队列(LPOP msg_queue
LRANGE key 0 -1 获取列表所有元素 读取最新 10 条评论(LRANGE comment:1 0 9

五、有序集合(ZSet)核心命令(排行榜专属)

命令 核心作用 典型使用场景
ZADD key score member 添加元素并指定分数 排行榜(ZADD rank 95 张三 98 李四
ZREVRANGE key 0 n [WITHSCORES] 按分数降序取前 n 个元素 获取排行榜前 10 名(ZREVRANGE rank 0 9 WITHSCORES
ZSCORE key member 获取元素的分数 查看用户的排行榜分数(ZSCORE rank 张三
ZINCRBY key increment member 元素分数自增 给用户加分(ZINCRBY rank 2 张三

六、集合(Set)核心命令(去重 / 交集场景)

命令 核心作用 典型使用场景
SADD key member 添加元素(自动去重) 存储用户标签(SADD tag:1 java redis
SISMEMBER key member 判断元素是否在集合中 校验用户是否有某个标签(SISMEMBER tag:1 java
SINTER key1 key2 获取多个集合的交集 查找共同好友(SINTER friend:1 friend:2
相关推荐
_ku_ku_11 小时前
数据库系统原理 · SQL 数据定义、更新及数据库编程 · 自学总结
数据库·oracle
Mortalbreeze11 小时前
深度理解文件系统 ---- 从磁盘存储到内核存储
大数据·linux·数据库
2301_8039346111 小时前
MySQL 字段类型选择规范指南
jvm·数据库·python
oddsand112 小时前
Redis网络模型
java·数据库·redis
皮卡祺q12 小时前
【redies0-导论】分布式系统的演进-引进redis原因
java·数据库·redis
南极企鹅12 小时前
事务&@Transactional注解
java·数据库·spring·oracle·mybatis
UrSpecial12 小时前
Redis与多线程
数据库·redis·缓存
bqq1986102613 小时前
MySQL 8与MySQL 5.7的主要区别
数据库·mysql
chushiyunen13 小时前
r树索引、mysql对r树的支持
数据库·mysql
会编程的土豆13 小时前
Redis Sorted Set(有序集合)详解
数据库·redis·bootstrap