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中
相关推荐
小字节,大梦想32 分钟前
【C++】二叉搜索树
数据结构·c++
我是哈哈hh1 小时前
专题十_穷举vs暴搜vs深搜vs回溯vs剪枝_二叉树的深度优先搜索_算法专题详细总结
服务器·数据结构·c++·算法·机器学习·深度优先·剪枝
丶Darling.2 小时前
LeetCode Hot100 | Day1 | 二叉树:二叉树的直径
数据结构·c++·学习·算法·leetcode·二叉树
labuladuo5202 小时前
Codeforces Round 977 (Div. 2) C2 Adjust The Presentation (Hard Version)(思维,set)
数据结构·c++·算法
Indigo_code2 小时前
【数据结构】【链表代码】合并有序链表
数据结构·windows·链表
jiyisuifeng19912 小时前
代码随想录训练营第54天|单调栈+双指针
数据结构·算法
我言秋日胜春朝★2 小时前
【C++】红黑树
数据结构
新晓·故知2 小时前
<基于递归实现线索二叉树的构造及遍历算法探讨>
数据结构·经验分享·笔记·算法·链表
BergerLee3 小时前
对不经常变动的数据集合添加Redis缓存
数据库·redis·缓存
gorgor在码农3 小时前
Mysql 索引底层数据结构和算法
数据结构·数据库·mysql