Redis RPUSH命令

Redis RPUSH命令教程

Redis 的 RPUSH 命令用于将一个或多个值 value 插入到列表 KEY 的表尾。如果有多个 value 值,那么各个 value 值按从左到右的顺序依次插入到表尾,这几个元素的插入操作是原子的。

如果 KEY 不存在,一个空 列表 会被创建并执行 RPUSH 操作。当 KEY 存在但不是列表类型时,返回一个错误。在 Redis 2.4 版本以前的 RPUSH 命令,都只接受单个 value 值。

Redis RPUSH命令详解

语法

192.168.98.70:6379> RPUSH KEY value [value ...]

参数

参数 描述
KEY 要添加元素的列表的键。
value 要添加的具体的元素。

返回值

执行 RPUSH 命令后,列表的长度。

时间复杂度

O(1)

可用版本

>= 1.0.0

案例

表尾插入元素

RPUSH 命令插入元素,使用的是列表的尾插法

192.168.98.70:6379> RPUSH haicoder Redis (integer) 1 192.168.98.70:6379> RPUSH haicoder Mongo (integer) 2 192.168.98.70:6379> RPUSH haicoder Mysql (integer) 3 192.168.98.70:6379> LRANGE haicoder 0 -1 1) "Redis" 2) "Mongo" 3) "Mysql" 192.168.98.70:6379> DEL haicoder (integer) 1

我们首先,使用 RPUSH 命令,向键为 haicoder 的列表的尾部插入值 Redis。使用 RPUSH 命令,向键为 haicoder 的列表的尾部插入值 Mongo。

接着,我们使用 RPUSH 命令,向键为 haicoder 的列表的尾部插入值 Mysql。

最火,我们使用 LRANGE 命令,获取键为 haicoder 的列表的所有元素,因为插入时使用了 RPUSH 即从尾部开始插入,所以最终元素的顺序为 RPUSH 插入时的顺序。

插入重复元素

列表可以支持插入重复元素

192.168.98.70:6379> RPUSH haicoder Redis (integer) 1 192.168.98.70:6379> RPUSH haicoder Mongo (integer) 2 192.168.98.70:6379> RPUSH haicoder Redis (integer) 3 192.168.98.70:6379> LRANGE haicoder 0 -1 1) "Redis" 2) "Mongo" 3) "Redis" 192.168.98.70:6379> DEL haicoder (integer) 1

首先,我们使用 RPUSH 命令,向键为 haicoder 的列表的尾部插入值 Redis。使用 RPUSH 命令,向键为 haicoder 的列表的尾部插入值 Mongo。

接着,我们使用 RPUSH 命令,向键为 haicoder 的列表的尾部插入值 Redis。最后,我们使用 LRANGE 命令,获取键为 haicoder 的列表的所有元素,这里可以看出重复插入了值 Redis 但两个值都在列表中。

插入多个元素

RPUSH 支持一次插入多个元素

192.168.98.70:6379> RPUSH haicoder Redis Mongo Mysql (integer) 3 192.168.98.70:6379> LRANGE haicoder 0 -1 1) "Redis" 2) "Mongo" 3) "Mysql" 192.168.98.70:6379> DEL haicoder (integer) 1

我们首先,使用 RPUSH 命令,向键为 haicoder 的列表中批量插入值 Redis、Mongo 和 Mysql。这三个值的插入操作是原子性的。

最后,我们使用 LRANGE 命令,获取键为 haicoder 的列表的所有元素,因为插入时使用了 RPUSH 即从尾部开始插入,所以最终元素的顺序为 RPUSH 插入时的顺序。

Redis RPUSH命令教程

Redis 的 RPUSH 命令用于将一个或多个值 value 插入到列表 KEY 的表尾。Redis RPUSH 命令语法:

192.168.98.70:6379> RPUSH KEY value [value ...]