当前位置: 移动技术网 > IT编程>数据库>MongoDB > Redis常用命令之操作List类型

Redis常用命令之操作List类型

2020年03月12日  | 移动技术网IT编程  | 我要评论

场景

centos中redis的下载编译与安装(超详细):

https://blog.csdn.net/badao_liumang_qizhi/article/details/103967334

redis的启动和关闭(前台启动和后台启动):

https://blog.csdn.net/badao_liumang_qizhi/article/details/103972348

redisdesktopmanager客户端可视化工具下载安装与使用:

https://blog.csdn.net/badao_liumang_qizhi/article/details/103983147

注:

博客:

关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

list类型是一个链表结构的集合,其主要功能有push、pop、获取元素等。更详细的说,list类型是一个双端链表的集合,我们可以通过相关的操作进行集合的头部或者尾部添加和删除元素,list的设计非常简单精巧,即可以作为栈,又可以作为队列,满足绝大多数的需求。

lpush/rpush命令

语法

lpush key value [value ...]

将一个或多个值 value 插入到列表 key 的表头

如果有多个 value 值,那么各个 value 值按从左到右的顺序依次插入到表头: 比如说,对空列表 mylist 执行命令 lpush mylist a b c ,列表的值将是 c b a ,这等同于原子性地执行 lpush mylist a 、 lpush mylist b 和 lpush mylist c 三个命令。

如果 key 不存在,一个空列表会被创建并执行 lpush 操作。

当 key 存在但不是列表类型时,返回一个错误。

 

rpush key value [value ...]

将一个或多个值 value 插入到列表 key 的表尾(最右边)。

如果有多个 value 值,那么各个 value 值按从左到右的顺序依次插入到表尾:比如对一个空列表 mylist 执行 rpush mylist a b c ,得出的结果列表为 a b c ,等同于执行命令 rpush mylist a 、 rpush mylist b 、 rpush mylist c 。

如果 key 不存在,一个空列表会被创建并执行 rpush 操作。

当 key 存在但不是列表类型时,返回一个错误。

举例

 

 

lrange命令

语法

lrange key start stop

返回列表 key 中指定区间内的元素,区间以偏移量 start 和 stop 指定。

下标(index)参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。

你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。

举例同上图。

linsert命令

语法

linsert key before|after pivot value

将值 value 插入到列表 key 当中,位于值 pivot 之前或之后。

当 pivot 不存在于列表 key 时,不执行任何操作。

当 key 不存在时, key 被视为空列表,不执行任何操作。

如果 key 不是列表类型,返回一个错误。

举例

 

 

 

lpop/rpop命令

语法

lpop key

移除并返回列表 key 的头元素。

 

rpop key

移除并返回列表 key 的尾元素。

举例

 

 

lrem命令

语法

lrem key count value

根据参数 count 的值,移除列表中与参数 value 相等的元素。

count 的值可以是以下几种:

count > 0 : 从表头开始向表尾搜索,移除与 value 相等的元素,数量为 count 。
count < 0 : 从表尾开始向表头搜索,移除与 value 相等的元素,数量为 count 的绝对值。
count = 0 : 移除表中所有与 value 相等的值。

 

举例

 

 

lset命令

语法

lset key index value

将列表 key 下标为 index 的元素的值设置为 value 。

当 index 参数超出范围,或对一个空列表( key 不存在)进行 lset 时,返回一个错误。

 

举例

 

 

 

llen命令

语法

llen key

返回列表 key 的长度。

如果 key 不存在,则 key 被解释为一个空列表,返回 0 .

如果 key 不是列表类型,返回一个错误。

举例

 

 

 

ltrim命令

语法

ltrim key start stop

对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。

举个例子,执行命令 ltrim list 0 2 ,表示只保留列表 list 的前三个元素,其余元素全部删除。

下标(index)参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。

你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。

当 key 不是列表类型时,返回一个错误。

举例

 

 

 

lindex命令

语法

lindex key index

返回列表 key 中,下标为 index 的元素。

下标(index)参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。

你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。

如果 key 不是列表类型,返回一个错误。

举例

 

 

其他常用命令请参考文档

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网