美文网首页
Redis系列-列表(List)

Redis系列-列表(List)

作者: 编程说书酱 | 来源:发表于2021-03-23 14:17 被阅读0次

    Redis列表是简单的字符串列表,按照插入顺序排序,左边(头部)、右边(尾部)或者中间都可以添加元素。链表的操作无论是头或者尾效率都极高,但是如果对中间元素进行操作,那效率会大大降低了。

    列表类型的数据操作总的思想是通过key和下标操作value,key是数据标识,下标是数据在列表中的位置,value是我们感兴趣的业务数据。

    1、lpush

    语法:lpush key value [value…]

    功能:将一个或多个值 value 插入到列表 key 的最左边(表头),各个value值依次插入到表头位置。

    返回值:插入之后的列表的长度。

    2、rpush

    语法:rpush key value [value…]

    功能:将一个或多个值 value 插入到列表 key 的最右边(表尾),各个 value 值按依次插入到表尾。

    返回值:插入之后的列表的长度。

    3、lrange

    语法:lrange key startIndex endIndex

    功能:获取列表 key 中指定下标区间内的元素,下标从0开始,到列表长度-1;下标也可以是负数,表示列表从后往前取,-1表示倒数第一个元素,-2表示倒数第二个元素,以此类推;startIndex和endIndex超出范围不会报错。

    返回值:获取到的元素列表。

    4、lpop

    语法:lpop key

    功能:移除并返回列表key头部第一个元素,即列表左侧的第一个元素。

    返回值:列表左侧第一个元素的值;列表key不存在,返回nil。

    5、rpop

    语法:rpop key

    功能:移除并返回列表key尾部第一个元素,即列表右侧的第一个元素。

    返回值:列表右侧第一个元素的值;列表key不存在,返回nil。

    6、lindex

    语法:lindex key index

    功能:获取列表 key 中下标为指定 index 的元素,列表元素不删除,只是查询。0 表示列表的第一个元素,1 表示列表的第二个元素;index也可以负数的下标, -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。

    返回值:key存在时,返回指定元素的值;

    Key不存在时,返回nil。

    7、llen

    语法:llen key

    功能:获取列表 key 的长度

    返回值:数值,列表的长度;key不存在返回0

    8、lrem

    语法:lrem key count value

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

    count >0 ,从列表的左侧向右开始移除;

    count < 0 从列表的尾部开始移除;

    count = 0移除表中所有与 value 相等的值。

    返回值:数值,移除的元素个数

    9、ltrim

    语法:ltrim key startIndex endIndex

    功能:截取key的指定下标区间的元素,并且赋值给key。下标从0开始,一直到列表长度-1;下标也可以是负数,表示列表从后往前取,-1表示倒数第一个元素,-2表示倒数第二个元素,以此类推;startIndex和endIndex超出范围不会报错。

    返回值:执行成功返回ok

    10、lset

    语法:lset key index value

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

    功能:设置成功返回ok ; key不存在或者index超出范围返回错误信息。

    11、linsert

    语法:linsert key before/after pivot value

    功能:将值 value 插入到列表 key 当中位于值 pivot 之前或之后的位置。key不存在或者pivot不在列表中,不执行任何操作。

    返回值:命令执行成功,返回新列表的长度。没有找到pivot返回 -1, key不存在返回0。

    相关文章

      网友评论

          本文标题:Redis系列-列表(List)

          本文链接:https://www.haomeiwen.com/subject/oprfhltx.html