Keys关键字常用指令
这里博主先设置k1 v1 k2 v2
exists key
判断key是否存在
move key dbnum
移动键值到dbnum库
![]()
这里将k1移动到2号库,查看当前库只有k2,切换到2号库之后,查看当前k1已经移动过来
expire key 秒钟
为给定的key设置过期时间
ttl key
查看还有多少秒过期,-1表示永不过期,-2表示已过期
![]()
接着上一步给k2设置了10s的过期时间,我们多次查看他的有效期,直到最后过期(-2),注意这里过期之后就被删除了,也就是没有k2这个key了。
![]()
一般我们set key value默认的有效期是永不过期,我们重新设置k1 v1,然后查看他的有效期
type key
查看key类型
![]()
del key
删除key
String字符串常用指令
set key value
将字符串值 value 关联到 key ,注意这里如果之前已经设置了k1 ,那么我们再次设置k1的时候是覆盖之前的值
![]()
这里我们设置了k1的值为v1,那么我们再次设置k1的值为v11如下
get key
获取指定key的值
![]()
append key value
给指定的key添加内容,之前我们的k1的值是v11这里追加了add,得到的k1的值为v11add如下图所示。
strlen key
获取指定key的值的长度
![]()
incr key
指定的key的值自增+1,只有数字才能进行加减
decr key
指定的key的值自减-1,只有数字才能进行加减
![]()
incrby key 步长
指定的key的值按照给出的步长自增
decrby key 步长
指定的key的值按照给出的步长自减
getrange key 起始下标 结束下标
获取指定范围内的值,类似于between and 从0 到 -1是获取全部,截取子字符串
setrange key offset value
给指定的key的值从某个位置开始覆盖赋值,比如k1的原值v11add,从下标2开始赋值v22,得到v1v22d如下
setex key 有效期 value
setex(set with expire),设置键值对的时候同时设置过期时间
setnx key value
setnx(set if not exist) 将 key 的值设为 value ,当且仅当 key 不存在
![]()
因为之前已经设置了k1,所以使用setnx设置k1的时候报错,设置k4是ok的,因为没有k4
mset key1 value1 key2 value2….
一次性设置多个键值,这里的m代表的是more
mget key1 key2 key3….
一次性获取多个key的值,这里的m代表的是more
![]()
msetnx
一次性设置多个键值,当且仅当key不存在,注意,假设设置的多个key中有的已经设置过了,有的key没有,这次操作是全部无效,而不是没有的key被设置成功
![]()
第一次我们尝试设置k1 k8,因为已经存在了k1,所以设置失败,第二次设置k8 k9 因为当前库没有k8 k9所以设置成功