首页/数据/数据库速查/LINSERT 指定元素前后插入
本包目录(495 条)
MySQL 基础与连接36 条SQL 语法52 条用户与权限21 条备份与恢复56 条主从复制与高可用53 条性能与调优57 条
Redis 命令96 条
Redis 运维与场景124 条

LINSERT 指定元素前后插入

在列表中「找到某个值」然后在其前/后插入新元素:LINSERT key BEFORE|AFTER pivot value;pivot 不存在返回 -1。

数据库速查数据更新于 2026-10-12

示例

示例
RPUSH tasks t1 t2 t3
LINSERT tasks BEFORE t2 urgent   # 3,变 t1 urgent t2 t3
LINSERT tasks AFTER t3 tail      # 4,变 t1 urgent t2 t3 tail
LINSERT tasks BEFORE t99 x       # -1:pivot 不存在,未插入
返回插入后长度;-1 表示 pivot 不存在
复杂度O(N) 扫描找 pivot
场景优先级插队、顺序修正
pivot 是「值匹配」不是下标:列表有重复值时插入到第一个匹配处,语义上要确认可接受。

易错点

  • 以为按第一个或最后一个 pivot 插入有明确选项:实际只认第一个匹配位置
  • 大列表频繁 LINSERT:每次全列表扫描,性能随长度线性下降

数据来源与参考

  • Redis 官方文档: LINSERT

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌