Redis 5种数据结构常用命令

文章目录

  • [1 字符串](#1 字符串)
  • [2 哈希](#2 哈希)
  • [3 列表](#3 列表)
  • [4 集合](#4 集合)
  • [5 有序集合](#5 有序集合)

1 字符串

命令 描述
set key value 设置指定key的值为value
get key 获取指定key的值
del key [key ...] 删除一个或多个key
mset key value [key value ...] 设置多个key的值
mget key [key ...] 获取一个或多个key的值
incr key 将key中储存的数字值增一
decr key 将key中储存的数字值减一
incrby key increment 将key中储存的值加上增量increment
decrby key decrement 将key中储存的值减去减量decrement
incrbyfloat key increment 将key中储存的值加上浮点增量increment
append key value 将value追加到key原来的值的末尾
strlen key 返回key储存的字符串值的长度
setrange key offset value 用value覆盖key储存的字符串值的一部分,从offset开始
getrange key start end 返回key储存的字符串值的子字符串,子字符串由start和end指定

2 哈希

命令 描述
hset key field value 将哈希表key中的字段field的值设为value
hget key field 获取存储在哈希表key中指定字段field的值
hdel key field [field ...] 删除哈希表key中的一个或多个指定字段
hlen key 获取哈希表key中字段的数量
hgetall key 获取哈希表key中所有的字段和值
hmget key field [field ...] 获取所有给定字段的值
hmset key field value [field value ...] 同时将多个field-value对设置到哈希表key中
hexists key field 查看哈希表key中,指定的字段field是否存在
hkeys key 获取哈希表key中的所有字段
hvals key 获取哈希表key中的所有值
hsetnx key field value 只有在字段field不存在时,设置哈希表字段的值
hincrby key field increment 为哈希表key中的field的整数值加上增量increment
hincrbyfloat key field increment 为哈希表key中的field的浮点数值加上增量increment
hstrlen key field 获取存储在哈希表中指定字段的值的长度

3 列表

4 集合

命令 描述
sadd key element [element ...] 向集合key添加一个或多个元素
srem key element [element ...] 移除集合key中的一个或多个元素
scard key 获取集合key的成员数
sismember key element 判断element是否是集合key的成员
srandmember key [count] 如果count没有指定,返回集合key中的一个随机元素;如果指定了count,返回集合中的count个元素
spop key 移除并返回集合中的一个随机元素
smembers key 返回集合key中的所有成员
sinter key [key ...] 或 sinterstore 返回所有给定集合的交集;sinterstore将结果存储到一个新的集合中
sunion key [key ...] 或 sunionstore 返回所有给定集合的并集;sunionstore将结果存储到一个新的集合中
sdiff key [key ...] 或 sdiffstore 返回给定集合之间的差集;sdiffstore将结果存储到一个新的集合中

5 有序集合

命令 描述
zadd key score member [score member ...] 向有序集合key添加一个或多个成员,或者更新已存在成员的分数
zcard key 获取有序集合key的成员数
zscore key member 返回有序集合key中,成员member的分数
zrank key member 返回有序集合key中,成员member的排名
zrevrank key member 返回有序集合key中,成员member的排名,分数从高到低计算
zrem key member [member ...] 移除有序集合key中的一个或多个成员
zincrby key increment member 为有序集合key中的成员member的分数加上增量increment
zrange key start end [withscores] 返回有序集合key中,指定区间内的成员
zrevrange key start end [withscores] 返回有序集合key中,指定区间内的成员,通过索引,分数从高到低
zrangebyscore key min max [withscores] 返回有序集合key中,分数在指定区间内的成员
zrevrangebyscore key max min [withscores] 返回有序集合key中,分数在指定区间内的成员,分数从高到低排序
zcount key min max 计算在有序集合key中,分数在指定区间的成员数
zremrangebyrank key start end 移除有序集合key中,指定排名区间内的所有成员
zremrangebyscore key min max 移除有序集合key中,所有分数在指定区间的成员
zinterstore destination numkeys key [key ...] 计算给定的一个或多个有序集的交集,并存储在新的有序集合destination中
zunionstore destination numkeys key [key ...] 计算给定的一个或多个有序集的并集,并存储在新的有序集合destination中
相关推荐
菜鸡中的奋斗鸡→挣扎鸡40 分钟前
滑动窗口 + 算法复习
数据结构·算法
Code apprenticeship1 小时前
怎么利用Redis实现延时队列?
数据库·redis·缓存
百度智能云技术站1 小时前
广告投放系统成本降低 70%+,基于 Redis 容量型数据库 PegaDB 的方案设计和业务实践
数据库·redis·oracle
装不满的克莱因瓶1 小时前
【Redis经典面试题六】Redis的持久化机制是怎样的?
java·数据库·redis·持久化·aof·rdb
axxy20002 小时前
leetcode之hot100---240搜索二维矩阵II(C++)
数据结构·算法
Uu_05kkq3 小时前
【C语言1】C语言常见概念(总结复习篇)——库函数、ASCII码、转义字符
c语言·数据结构·算法
黄名富5 小时前
Redis 附加功能(二)— 自动过期、流水线与事务及Lua脚本
java·数据库·redis·lua
1nullptr5 小时前
三次翻转实现数组元素的旋转
数据结构
TT哇5 小时前
【数据结构练习题】链表与LinkedList
java·数据结构·链表
A懿轩A5 小时前
C/C++ 数据结构与算法【栈和队列】 栈+队列详细解析【日常学习,考研必备】带图+详细代码
c语言·数据结构·c++·学习·考研·算法·栈和队列