「这是我参与2022首次更文挑战的第9天,活动详情查看:2022首次更文挑战」
今天的知识他又来了!!!
3)列表(List)
Redis列表是简单的字符串列表,按照插入顺序排序,左边(头部)、右边(尾部)或者中间都可以添加元素。链表的操作无论是头或者尾效率都极高,但是如果对中间元素进行操作,那效率会大大降低了。
列表类型的数据操作总的思想是通过key和下标操作value,key是数据标识,下标是数据在列表中的位置,value是我们感兴趣的业务数据。
1.1 rpush
语法:rpush key value [value…]
功能:将一个或多个值 value 插入到列表 key 的最右边(表尾),各个 value 值按依次插入到表尾。
返回值:插入之后的列表的长度。
1.2 rpush
语法:rpush key value [value…]
功能:将一个或多个值 value 插入到列表 key 的最右边(表尾),各个 value 值按依次插入到表尾。
返回值:插入之后的列表的长度。
1.3 lrange
语法:lrange key startIndex endIndex
功能:获取列表 key 中指定下标区间内的元素,下标从0开始,到列表长度-1;下标也可以是负数,表示列表从后往前取,-1表示倒数第一个元素,-2表示倒数第二个元素,以此类推;startIndex和endIndex超出范围不会报错。
返回值:获取到的元素列表。
1.4 lpop
语法:lpop key
功能:移除并返回列表key头部第一个元素,即列表左侧的第一个元素。
返回值:列表左侧第一个元素的值;列表key不存在,返回nil。
1.5 rpop
语法:rpop key
功能:移除并返回列表key尾部第一个元素,即列表右侧的第一个元素。
返回值:列表右侧第一个元素的值;列表key不存在,返回nil。
1.6 lindex
语法:lindex key index
功能:获取列表 key 中下标为指定 index 的元素,列表元素不删除,只是查询。0 表示列表的第一个元素,1 表示列表的第二个元素;index也可以负数的下标, -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。
返回值:key存在时,返回指定元素的值;
Key不存在时,返回nil。
1.7 llen
语法:llen key
功能:获取列表 key 的长度
返回值:数值,列表的长度;key不存在返回0
1.8 lrem
语法:lrem key count value
功能:根据参数 count 的值,移除列表中与参数 value 相等的元素,
count >0 ,从列表的左侧向右开始移除;
count < 0 从列表的尾部开始移除;
count = 0移除表中所有与 value 相等的值。
返回值:数值,移除的元素个数
1.9 ltrim
语法:ltrim key startIndex endIndex
功能:截取key的指定下标区间的元素,并且赋值给key。下标从0开始,一直到列表长度-1;下标也可以是负数,表示列表从后往前取,-1表示倒数第一个元素,-2表示倒数第二个元素,以此类推;startIndex和endIndex超出范围不会报错。
返回值:执行成功返回ok
1.10 lset
语法:lset key index value
功能:将列表 key 下标为 index 的元素的值设置为 value。
功能:设置成功返回ok ; key不存在或者index超出范围返回错误信息。
4)集合类型(set)
Redis的Set是string类型的无序不重复集合。
集合类型的数据操作总的思想是通过key确定集合,key是集合标识,元素没有下标,只有直接操作业务数据和数据的个数。
1.1 sadd
语法:sadd key member [member…]
功能:将一个或多个 member 元素加入到集合 key 当中,已经存在于集合的 member 元素将被忽略,不会再加入。
返回值:加入到集合的新元素的个数(不包括被忽略的元素)。
1.2 smembers
语法:smembers key
功能:获取集合 key 中的所有成员元素,不存在的key视为空集合。
返回值:返回指定集合的所有元素集合,不存在的key,返回空集合。
1.3 sismember
语法:sismember key member
功能:判断 member 元素是否是集合 key 的元素
返回值:member是集合成员返回1,其他返回 0 。
1.4 scard
语法:scard key
功能:获取集合里面的元素个数
返回值:数字,key的元素个数。其他情况返回 0 。
1.5 srem
语法:srem key member [member…]
功能:移除集合中一个或多个元素,不存在的元素被忽略。
返回值:数字,成功移除的元素个数,不包括被忽略的元素。