Redis 中列表(List)常见命令详解

列表(List)常见命令详解

在 Redis 中,列表(List)是一种线性数据结构,允许在列表的头部和尾部进行高效的元素添加和删除操作。列表中的元素是有序的,并且可以重复。以下是 Redis 中列表相关命令的详细解释和用法:

添加元素
  1. LPUSH key value [value ...]

    • 功能:将一个或多个值插入到列表头部。如果列表不存在,会创建一个新的列表。
    • 示例LPUSH mylist "a" 会将元素 "a" 添加到 mylist 的头部。
  2. RPUSH key value [value ...]

    • 功能:将一个或多个值插入到列表尾部。如果列表不存在,会创建一个新的列表。
    • 示例RPUSH mylist "b" 会将元素 "b" 添加到 mylist 的尾部。
插入元素
  1. LINSERT key BEFORE|AFTER pivot value
    • 功能 :在列表中找到值等于 pivot 的元素之前或之后插入 value。如果列表不存在或 pivot 不存在,则不执行任何操作。
    • 示例LINSERT mylist BEFORE "a" "c" 会在列表 mylist 中找到 "a" 之前插入 "c"
获取元素范围
  1. LRANGE key start stop
    • 功能 :获取列表指定范围内的元素。索引从 0 开始,stop-1 时表示列表的最后一个元素。
    • 示例LRANGE mylist 0 -1 会获取 mylist 中的所有元素。
修改元素
  1. LSET key index value
    • 功能:通过索引设置列表指定位置的值。如果索引超出范围,则返回错误。
    • 示例LSET mylist 1 "d" 会将 mylist 中索引为 1 的元素设置为 "d"
删除元素
  1. LREM key count value
    • 功能 :根据参数 count 的值,从列表中删除指定数量的 value
      • count > 0:从头部开始删除 countvalue
      • count < 0:从尾部开始删除 |count|value
      • count = 0:删除所有匹配的 value
    • 示例LREM mylist 2 "a" 会从 mylist 中删除前两个 "a"
弹出元素
  1. LPOP key

    • 功能 :移除并返回列表的第一个元素。如果列表为空,则返回 nil
    • 示例LPOP mylist 会移除 mylist 的第一个元素并返回它。
  2. RPOP key

    • 功能 :移除并返回列表的最后一个元素。如果列表为空,则返回 nil
    • 示例RPOP mylist 会移除 mylist 的最后一个元素并返回它。
获取单个元素
  1. LINDEX key index
    • 功能 :通过索引获取列表中的元素。如果索引超出范围,则返回 nil
    • 示例LINDEX mylist 0 会获取 mylist 中的第一个元素。
获取列表长度
  1. LLEN key
    • 功能 :返回列表的长度。如果列表不存在,则返回 0
    • 示例LLEN mylist 会返回 mylist 的长度。

这些命令提供了对列表数据结构的丰富操作,使得 Redis 能够高效地处理线性数据结构。通过合理使用这些命令,可以灵活地管理和查询存储在 Redis 中的列表数据。

相关推荐
JANGHIGH11 分钟前
c++ std::list使用笔记
c++·笔记·list
干炒 牛河23 分钟前
数据结构:双链表list
数据结构·list
是姜姜啊!29 分钟前
redis的应用,缓存,分布式锁
java·redis·spring
库库林_沙琪马1 小时前
Redis 缓存穿透、击穿、雪崩:问题与解决方案
数据库·redis·缓存
Hanson Huang2 小时前
【存储中间件API】MySQL、Redis、MongoDB、ES常见api操作及性能比较
redis·mysql·mongodb·es
黄雪超2 小时前
大数据SQL调优专题——引擎优化
大数据·数据库·sql
LUCIAZZZ2 小时前
EasyExcel快速入门
java·数据库·后端·mysql·spring·spring cloud·easyexcel
落落落sss2 小时前
MongoDB
数据库·windows·redis·mongodb·微服务·wpf
wolf犭良2 小时前
19、《Springboot+MongoDB整合:玩转文档型数据库》
数据库·spring boot·mongodb
yuanbenshidiaos2 小时前
【正则表达式】
数据库·mysql·正则表达式