命令查询官网:https://redis.io/commands

在这里记录一些Redis中常用的命令,包括每个数据类型的操作命名以及通用命令,随时遇到随时补充

通用命令

通用命令不针对某种数据类型,可直接使用


# 查看有多少个库(默认16个,在配置文件中的databases属性中设置)
CONFIG GET DATABASES

# 获取当前库中KEY的数量
DBSIZE

# 校验Redis密码,(密码在配置文件中的requirepass属性中设置)
AUTH [password]
# 获取Redis中匹配的所有KEY,*为通配符
KEYS *

# 选择第某个库,索引从0开始
SELECT [index]

# 帮助命令,查看该命令的参数及使用方法
HELP [command]

# 删除某个KEY
DEL [key, key...]

# 校验该KEY是否存在
EXISTS [key, key...]

# 设置该KEY的过期时间,秒/单位
EXPIRE [key, seconds]

# 获取该KEY的过期时间,-1永久有效,-2已过期
TTL [key]

字符串命令

针对字符串操作的相关命令,存储格式为KEY-VALUE的键值对

# 添加字符串
SET [key, value]

# 获取字符串
GET [key]

# 批量添加字符串
MSET [key, value, key, value ...]

# 批量获取字符串
MGET [key, key...]

# 添加字符串,该KEY已存在的情况下不覆盖
SETNX [key, value]

# 添加字符串的同时设置过期时间 秒/单位
SETEX [key, seconds, value]

# 设置字符串自增(仅对数字类型字符串生效,默认步长为1)
INCR [key]

# 设置字符串按指定步长自增(仅对数字类型字符串生效)
INCRBY [key, increment]

# 设置字符串自减(仅对数字类型字符串生效,默认步长为1)
DECR [key]

# 设置字符串按指定步长自减(仅对数字类型字符串生效)
DECRBY [key, increment]

# 设置字符串按指定步长自增(对浮点类型生效,浮点类型没有默认步长)
INCRBYFLOAT [key, increment]

Hash命令

Hash可以理解为Java中的Map类型,除了值本身的KEY之外,还包含多个FIELD,每个FIELD对应不同的值,格式为KEY-FIELD-VALUE

# 添加值
HSET [key, field, value]

# 获取值
HGET [key, field]

# 批量添加值
HMSET [key, field, value, field, value ...]

# 批量获取值
HMGET [key, field, field...]

# 获取所有FIELD
HKEYS [key]

# 获取所有VALUE
HVALS [key]

# 获取该KEY的所有FIELD和VALUE
HGETALL [key]

# 针对该KEY-FIELD按照指定步长自增(自增给负数可以时间自减功能,该特点所有类型通用)
HINCRBY [key, field, increment]

# 天添加值,在该KEY-FIELD已存在的情况下不覆盖
HSETNX [key, field, value]

List命令

List为列表类型,和Java中的LinkdList类似,为双向链表,可分别操作头尾数据

# 从左侧插入值
LPUSH [key, value, value...]

# 从左侧获取并移除指定数量的值
LPOP [key, count]

# 从右侧插入值
RPUSH [key, value, value...]

# 从右侧获取并移除指定数量的值
RPOP [key, count]

# 获取指定范围的值,不会移除数据,下标在头部(左侧)从0开始
LRANGE [key, start, end]

# 从左侧阻塞获取
BLPOP [key, key..., timeout]

# 从右侧阻塞获取
BRPOP [key, key..., timeout]

SET命令

Redis的SET也可以理解为Java中的SET,不允许重复数据,SET可以处理交集并集等情况

# 添加值
SADD [key, member, member...]

# 移除值
SREM [key, member, member...]

# 获取该KEY中VALUE的数量
SCARD [key]

# 判断该KEY中是否包含该VALUE
SISMEMBER [key, member]

# 获取所有KEY
SMEMBERS [key]

# 取多个SET中的交集
SINTER [key, key...]

# 取多个SET中的差集
SDIFF [key, key...]

# 取多个SET中的并集
SUNION [key, key...]