③【List】Redis常用数据类型: List [使用手册]

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~

个人主页:.29.的博客

学习社区:进去逛一逛~

Redis List

  • [③Redis List 操作命令汇总](#③Redis List 操作命令汇总)
      • [1. lpush 将一个或多个值插入列表头部](#1. lpush 将一个或多个值插入列表头部)
      • [2. lpop 移出并获得列表的第一个元素(可指定移出的个数)](#2. lpop 移出并获得列表的第一个元素(可指定移出的个数))
      • [3. lrange 查看指定区间范围的列表元素](#3. lrange 查看指定区间范围的列表元素)
      • [4. rpush 将一个或多个值插入列表尾部](#4. rpush 将一个或多个值插入列表尾部)
      • [5. rpop 移出并获取列表最后一个元素(可指定移出的个数)](#5. rpop 移出并获取列表最后一个元素(可指定移出的个数))
      • [6. lindex 根据索引下标获取元素(由上到下)](#6. lindex 根据索引下标获取元素(由上到下))
      • [7. llen 获取指定列表的元素个数](#7. llen 获取指定列表的元素个数)
      • [8.lrem 删除列表中一个或多个指定元素](#8.lrem 删除列表中一个或多个指定元素)
      • [9. ltrim 指定索引区间,对列表进行修剪(保留区间内元素)](#9. ltrim 指定索引区间,对列表进行修剪(保留区间内元素))
      • [10. rpoplpush 移出列表最后元素,将其添加至另一列表](#10. rpoplpush 移出列表最后元素,将其添加至另一列表)
      • [11. lset 通过索引设置列表元素的值](#11. lset 通过索引设置列表元素的值)
      • [12. linsert 在列表的元素前或后插入元素](#12. linsert 在列表的元素前或后插入元素)

③Redis List 操作命令汇总


  • redis列表是简单的字符串列表,可添加元素至表头表尾
  • 底层实际是个双端链表,最多可包含2^32-1个元素(4294967295)

1. lpush 将一个或多个值插入列表头部

lpush key element [element ...]

bash 复制代码
# 将1-5的值插入列表list1的头部
lpush list1 1 2 3 4 5

2. lpop 移出并获得列表的第一个元素(可指定移出的个数)

lpop key [count]

bash 复制代码
# 移出并获得列表的第一个元素
lpop list1
# 移出并获得列表的前三个元素
lpop list1 3

3. lrange 查看指定区间范围的列表元素

lrange key start stop

bash 复制代码
# 查看列表所有下标范围的元素
lrange list1 0 -1
# 查看列表下标0-3范围的元素
lrange list1 0 3

4. rpush 将一个或多个值插入列表尾部

rpush key element [element ...]

bash 复制代码
# 向列表尾部插入三个x,返回当前列表元素个数
rpush list1 x x x

5. rpop 移出并获取列表最后一个元素(可指定移出的个数)

rpop key [count]

bash 复制代码
# 移出列表list1最后一个元素,展示
rpop list1
# 移出列表list1最后五个元素,展示
rpop list1 5

6. lindex 根据索引下标获取元素(由上到下)

lindex key index

bash 复制代码
# 获取指定下标的元素,索引由列表头至列表尾,即:由上到下
lindex list1 0
lindex list1 1
lindex list1 2
lindex list1 3

7. llen 获取指定列表的元素个数

llen key

bash 复制代码
llen list1

8.lrem 删除列表中一个或多个指定元素

lrem key count element

bash 复制代码
# 删除列表list2中1个值为a的元素
lrem list2 1 a
# 删除列表list2中4个值为d的元素
lrem list2 4 d

9. ltrim 指定索引区间,对列表进行修剪(保留区间内元素)

ltrim key start stop

bash 复制代码
# 对列表list2进行修剪,保留0-2索引下标范围的元素
ltrim list2 0 2

10. rpoplpush 移出列表最后元素,将其添加至另一列表

rpoplpush source destination

bash 复制代码
# 移出列表list1最后元素,将其添加至列表list2
rpoplpush list1 list2

11. lset 通过索引设置列表元素的值

lset key index element

bash 复制代码
# 将索引下标为1的元素值改为JavaEE
lset list3 1 JavaEE

12. linsert 在列表的元素前或后插入元素

linsert key BEFORE|AFTER pivot element

bash 复制代码
# 在列表某个已有值的前后再添加具体值
linsert list3 before Python PHP
linsert list3 after c++ c#

相关推荐
疯狂的挖掘机8 小时前
记一次基于QT的图片操作处理优化思路(包括在图上放大缩小,截图,画线,取值等)
开发语言·数据库·qt
TheSumSt8 小时前
Python丨课程笔记Part3:语法进阶部分(控制结构与基础数据结构)
数据结构·笔记·python
奇树谦9 小时前
Qt | 利用map创建多个线程和定时器
网络·数据库·qt
用户47949283569159 小时前
性能提升 4000%!我是如何解决 运营看板 不能跨库&跨库查询慢这个难题的
数据库·后端·postgresql
电商API&Tina9 小时前
跨境电商 API 对接指南:亚马逊 + 速卖通接口调用全流程
大数据·服务器·数据库·python·算法·json·图搜索算法
robinson19889 小时前
验证崖山数据库标量子查询是否带有CACHE功能
数据库·oracle·cache·自定义函数·崖山·标量子查询
老华带你飞10 小时前
农产品销售管理|基于java + vue农产品销售管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
SelectDB10 小时前
5 倍性能提升,Apache Doris TopN 全局优化详解|Deep Dive
数据库·apache
JIngJaneIL11 小时前
基于springboot + vue房屋租赁管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
长安er11 小时前
LeetCode 20/155/394/739/84/42/单调栈核心原理与经典题型全解析
数据结构·算法·leetcode·动态规划·