*Redis LPUSHX 命令
只在 List 存在时,将元素插入 List 头部。List 不存在时不创建。
*语法
LPUSHX key element [element ...]
*参数说明
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| key | String | 是 | List 键名 |
| element | String | 是 | 要插入的元素,可一次插入多个 |
*返回值
| 条件 | 返回值 |
|---|---|
| List 存在 | 插入后 List 的长度(Integer) |
| List 不存在 | 0 |
*时间复杂度
O(1) 每个元素。
*示例
> LPUSHX mylist a
(integer) 0 # List 不存在,不创建
> LPUSH mylist a
(integer) 1
> LPUSHX mylist b c
(integer) 3
> LRANGE mylist 0 -1
1) "c"
2) "b"
3) "a"
*常见错误
- 对非 List 使用:返回 WRONGTYPE。
*最佳实践
- 安全插入:只在 List 已存在时插入,避免创建不需要的 List。
*FAQ
Q: LPUSHX 和 LPUSH 有什么区别? A: LPUSHX 只在 List 存在时插入;LPUSH 总是创建 List(如果不存在)。LPUSHX 更安全,避免意外创建 key。