KV型内存数据库Redis(3)

超出范围的下标值不会引起错误,如果start比列表的最大下标还要大那么返回一个空列表,如果stop下标比最大下标还要大,stop的值将被设为最大下标。

LINDEX LINDEX key index

返回列表key中,下标为index的元素。若index超出范围或者key指向空列表(key不存在)则会返回nil, 若key指向其它类型则返回错误。

下标以0为底,即0表示列表中的第一个元素, 1表示第二个元素。也可以使用负数下标,-1表示最后一个元素, -2表示倒数第二个元素。

LINSERT LINSERT key BEFORE|AFTER pivot value RPUSH arr "World" LINSERT arr BEFORE "World" "HELLO"

将值value插入到列表key中,位于值pivot之前或之后。当pivot不存在于列表key时,不执行任何操作。当key不存在时,key被视为空列表,不执行任何操作。

如果命令执行成功,返回插入操作完成之后列表的长度。如果没有找到pivot返回-1,如果key不存在或为空列表,返回0。

LREM LREM key count value

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

count的值可以是以下几种:

count > 0: 从表头开始向表尾搜索,移除与value相等的元素,数量为count。

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

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

LTRIM LTRIM key start stop

让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除, start和stop指定区间的规则与LRANGE相同。

若删除成功或key不存在则返回OK,若key指向其它类型则返回错误。

LSET LSET key index value

将列表key中下标为index的元素的值设置为value,下标以0为底,可以使用负数下标。

当index参数超出范围,或对一个空列表(key不存在或指向其它类型)进行LSET时,返回一个错误。

LPOP, RPOP LPOP key

移除并返回列表key的头元素, key不存在时返回nil。key指向其它类型时返回错误。

类似地有RPOP命令,移除并返回列表key的尾元素。

set

集合(set)是一种无序容器,不存在重复元素,可以用于判断元素是否存在或者进行交并差运算。

Redis中集合的元素类型只能是字符串,不支持其它类型。

SADD SADD key member [member ...]

将一个或多个member元素加入到集合key当中,返回添加到集合中新元素的数量,已经存在于集合的元素将被忽略。

若key不存在先初始化一个空集合然后添加成员,若key指向了非集合类型则会产生错误。

SSCARD SSCARD key

返回集合中元素的数量,key不存在时返回0,key指向其它类型时返回一个错误。

SMEMBERS SMEMBERS key

返回key指向的集合中的所有成员,若key不存在返回空集,若key指向其它类型则返回一个错误。

SISMEMBER SISMEMBER key member

判断member元素是否集合key的成员, 若元素是集合的成员返回1,若元素不是集合的成员或者集合不存在则返回0。

若key指向其它类型则返回一个错误。

SREM SREM key member [member ...]

移除集合中的一个或多个元素,不存在的元素会被忽略,返回被成功移除的元素的个数。

若key不存在则作为空集处理,返回0。若key指向其它类型则返回一个错误。

SINTER, SUNION, SDIFF SINTER key [key ...] SUNION key [key ...] SDIFF key [key ...]

返回给定集合的交集(SINTER),并集(SUNION)和差集(SDIFF),若key不存在则作为空集处理,若key指向其它类型则返回一个错误。

SINTERSTORE, SUNIONSTORE, SDIFFSTORE SINTER dest key [key ...] SUNION dest key [key ...] SDIFF dest key [key ...]

计算给定集合的交集(SINTERSTORE),并集(SUNIONSTORE)和差集(SDIFFSTORE),并将结果存入dest集合,若dest集合已存在则将其覆盖。

若key不存在则作为空集处理,若key指向其它类型则返回一个错误。

dest可以是某个参与计算的key,dest可以指向其它类型,计算结束后dest中的值会被覆盖。

SPOP SPOP key

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/e09f70bdc9085347e509b9c215eb523f.html