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

LPOS 查找元素位置

按值查找下标:LPOS key element [RANK n] [COUNT m];RANK 指定第几个匹配(负数从右数),COUNT 0 返回全部位置(6.0.6+)。

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

示例

示例
RPUSH q a b a c a
LPOS q a            # 0(第一个 a 的下标)
LPOS q a RANK 2     # 2(第二个 a)
LPOS q a RANK -1    # 4(从右数第一个)
LPOS q a COUNT 0    # 0 2 4(所有位置)
LPOS q z            # nil
RANK第几个匹配,默认 1;负数从右
COUNT返回多个位置,0=全部
复杂度O(N)
需要知道「第几个匹配」而不是「值在哪」时,RANK 比应用层遍历更省;COUNT 模式仍会全扫描。

易错点

  • 在 6.0.6 之前版本使用 LPOS:命令不存在,兼容性要确认
  • 对大列表频繁 LPOS:全扫描且没有索引,等于链表查找

数据来源与参考

  • Redis 官方文档: LPOS

相关工具

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