Redis系列 String,List类型
Posted Kotlin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis系列 String,List类型相关的知识,希望对你有一定的参考价值。
一:String类型
string是二进制安全的(图片视频序列化存储,取出来还是可以用的)最多512M
增
set key(设key)
append key value(在原来基础上增加 += )
setnx key value(存在时候不设置成功1,不成功0) 不成功
成功
mset key1 value1 key2 value2 key3 value3 (一次放进去多个) 没有的时候创建
有的时候覆盖
msetnx key1 value1 key2 value2 key3 value3 (执行多个)
不会进行覆盖式操作,所有的key都必须不存在的时候,才能执行成功(成功1,不成功0) bb存在的,操作不成功
都不存在的,操作成功
删
del key 删除
改
incr key (自增1)
(原子性,多线程不被其他线程中断,i++不是原子性)
decr key (自减1)
(原子性,多线程不被其他线程中断)
incrby key 10(自增10)
(原子性,多线程不被其他线程中断)
decrby key 10(自减10)
(原子性,多线程不被其他线程中断)
setrange key start value(覆盖key的value start)
从第四位开始覆盖aa
getset key value(设置值的同时获取旧的值)
覆盖的时候先拿旧值,原来没有的话就返回nil
查
get key (拿出来)
mget key1 key2 key3 (一次拿出来多个)
有的时候拿出来,没有的时候返回nil(dd 不存在)
strlen key(长度)
getrange key start end(substr 前后都包含)
类似于substr函数,有数据返回数据,没有数据返回\'\'
setex key 过期时间 value(设置值的同时设置过期时间)
没有就创建key,有就覆盖
二:list类型
list数据 (key,[value1,value2,value3,value4])本质是一个双向的链表,索引操作性能较差,有序可重复集合
增
lpush key value1 value2 value3 value4 左边插入
没有就创建key.相当于从0插入,以前的右移
rpush key value1 value2 value3 value4 右边插入
没有就创建key.相当于append
删
lpop key 左边吐出 返回删除的值
rpop key 右边吐出 返回删除的值
lrem list 2 d (删除2个d,返回删除个数) 返回删除个数
改
linsert key (before|after) value insertdata
在value之前或者之后插入insertdata,成功返回长度,不成功返回-1
查
lrange key start stop(显示值,stop -1 显示所有的值)
lindex ket index(数组下标显示值) 根据索引查找数据,不存在返回nil
llen(数组长度)
rpoplpush key1 key2 (key1右边吐出值插入key2左边)
只有这一个别的都没有(rpoprpush,lpoplpush,lpoprpush)
以上是关于Redis系列 String,List类型的主要内容,如果未能解决你的问题,请参考以下文章