Redis进阶--常用命令篇

以下是Redis中常用的命令集合,供大家查询。

分类 命令 功能
Key:键命令用于管理 redis 的键。 set key value 创建key-value
get key 获取key对应的value
del key 删除key
keys * 获取当前库中所有的key信息
exists key 检查key是否存在
expire key seconds 为key设置过期时间,时间单位为:秒
expireat key timestamp 为key设置过期时间,单位为:时间戳
persist key 移除 key 的过期时间,key 将持久保持(返回-1)
dump key 序列化给定key ,并返回被序列化的值
move key db 将当前数据库的 key 移动到给定的数据库 db 当中
pttl key 以毫秒为单位返回 key 的剩余的过期时间
ttl key 以秒为单位返回 key 的剩余的过期时间
rename key newkey 修改key的名称
renamenx key newkey 仅当 newkey 不存在时,将 key 改名为 newkey
type key 返回 key 所储存的值的类型
String:字符串数据类型的相关命令用于管理 redis 字符串值。 getrange key start end 返回 key 中字符串值的子字符(start 和 end 为value索引值)
getset key value 将给定 key 的值设为 value ,并返回 key 的旧值(old value,没有就返回null)
setnx key value 只有在 key 不存在时设置 key 的值
setex key seconds value 将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以秒为单位)
strlen key 返回 key 所储存的字符串值的长度
incr key 将 key 中储存的数字值增一
decr key 将 key 中储存的数字值减一
append key value 如果 key 已经存在并且是一个字符串, append 命令将指定的 value 追加到该 key 原来值(value)的末尾,并返回新字符串的长度
Hash:一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象,每个 hash 可以存储 2^32 - 1 键值对。 hmset key_name filed1 value1 filed2 value2 ... 同时将多个 field-value (字段-值)对设置到哈希表key_name中
hset key_name filed value 将哈希表 key_name 中的字段 field 的值设为 value(可新增和修改)
hsetnx key_name filed value 只有在字段 field 不存在时,设置哈希表key_name字段的值
hkeys key_name 获取所有哈希表key_name中的字段
hvals key_name 获取所有哈希表key_name中的值

hget key_name filed

hgetall key_name

获取存储在哈希表key_name中指定字段filed的值;

查询hash所有中的 key value

hdel key_name filed1 ... 删除一个或多个哈希表字段
hexists key_name filed 查看哈希表 key_name 中,指定的字段filed是否存在
hlen key_name 获取哈希表key_name中字段的数量
List:列表是简单的字符串列表,按照插入顺序排序,每个 列表可以存储 2^32 - 1 元素。 lpush key value1 value2 ... 将一个或多个值插入到列表头部
rpush key value1 value2 ... 在列表中添加一个或多个值到列表尾部
lset key index value 通过索引index设置(修改)列表元素key的值,索引越界报错ERR index out of range
lindex key index 通过索引获取列表中的元素
lrange key start end 获取列表指定范围内的元素(start end 为索引下标)
llen key 获取列表长度
lpop key 移出并获取列表的第一个元素(返回值为被移除的value)
rpop key 移出并获取列表的末尾一个元素(返回值为被移除的value)
ltrim key start end 对一个列表进行修剪trim,就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除(start end 为索引下标)
lrem key count value 根据参数 count 的值,移除列表中与参数 count 相等的元素
count > 0 : 从表头开始向表尾搜索,移除与 value 相等的元素,数量为 count
count < 0 : 从表尾开始向表头搜索,移除与 value 相等的元素,数量为 count 的绝对值
count = 0 : 移除表中所有与 value 相等的值
Set:String 类型的无序集合。集合成员是唯一的,集合中不能出现重复的数据。集合对象的编码可以是 intset 或者 hashtable 。集合中最大的成员数为 2^32 - 1 。 sadd key member1 member2 ... 向集合添加一个或多个成员
scard key 获取集合的成员数
sdiff key1 key2 ... 返回第一个集合与其他集合之间的差集
sdiffstore destination key1 key2 ... 返回给定所有集合的差集并存储在 destination 中
sinter key1 key2 ... 返回第一个集合与其他集合之间的交集
sinterstore destination key1 key2 ... 返回给定所有集合的交集并存储在 destination 中
sunion key1 key2 ... 返回所有给定集合的并集
sunionstore destination key1 key2 ... 返回所有给定集合的并集并存储在 destination 中
sismember key member 判断 member 元素是否是集合 key 的成员
smembers key 返回集合中的所有成员
spop key 移除并返回集合中的一个随机元素
srem key member1 member2 ... 移除集合中一个或多个成员
Sorted Set:String类型的有序集合,成员唯一不可重复。每个元素都会关联一个 double 类型的分数,redis通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复。 集合中最大的成员数为 2^32 - 1 。 sadd key score1 member1 score2 member2 ... 向有序集合添加一个或多个成员,或者更新已存在成员的分数
zcard key 获取有序集合的成员数
zcount key min max 计算在有序集合中指定区间分数的成员数
zrange key start end 通过索引区间返回有序集合指定区间内的成员(start end 为索引下标)
zrank key member 返回有序集合中指定成员的索引
zscore key member 返回有序集中,成员的分数值
zrevrank key member 返回有序集合中指定成员的排名,有序集成员按分数值递减(从大到小)排序,可以理解为先对有序集合排序,然后返回排序后,member所在的排名
zrem key member1 member2 ... 移除有序集合中的一个或多个成员

PS:所有类型的键都可以用 del key 这个命令来删除,别怀疑自己(这句话敲给某朋友看的=.=)

猜你喜欢

转载自blog.csdn.net/m0_54701273/article/details/128536204