一次获取多个key的值
mget key1 key2
追加内容到指定key的值后面
append key1 xxx
获取值的长度
strlen key1
只有在key不存在时才成功
setnx key1 value1
只有在所有key不存在时才成功
msetnx key1 value1 key2 value2 …
给指定key的值加1
incr key1
减1
decr key1
给指定key的值加指定数值,本例是加2
incrby key1 2
给指定key的值减指定数值,本例是减2
decrby key1 2
获取指定key的值中指定范围的字符,如值为abcdefg,取1至2返回bc,即包含1和2两个位置的字符
getrange key1 1 2
设置指定位置的值,指定开始位置,然后直接覆盖,如下例中值为abcdefg,从第1个位置开始覆盖为cb,则结果为acbdefg
setrange key1 1 cb
复制代码
list
双向链表,无序可重复的集合,一般用来做队列
命令
从表头添加元素,value2是新的表头
lpush key1 value1 value2 …
从表尾添加元素,value2是新的表尾
rpush key1 value1 value2 …
从表头弹出元素
lpop key1
从表尾弹出元素
rpop key1
从key1表尾弹出一个元素,再加到key2表头
rpoplpush key1 key2
从表中查看指定索引的范围的元素
lrange key1 0 2
查看整个链表
lrange key1 1 0 -1
获取链表中从左向右指定索引的元素
lindex key1 1
获取链表中最后一个元素
lindex key1 -1
获取链表长度
llen key1
向链表中的value1前面插入value2
linsert key1 before value1 value2
向链表中value1后面插入value2
linsert key1 after value1 value2
从链表中删除一个值为value1的元素,从左向右
lrem key1 1 value1
从链表中删除一个值为value1的元素,从右向左
lrem key1 -1 value1
删除链表中所有值为value1的元素
lrem key1 0 value1
复制代码
set
无序不可重复的集合,常用来排除重复数据和随机抽奖功能
命令
向集合中添加元素,重复元素会自动跳过
sadd key1 value1 value2 …
取出集合所有元素
smembers key1
判断集合中是否存在某个元素
sismember key1 value1
获取集合中的元素个数
scard key1
从集合中删除指定元素
srem key1 value1 value2 …
随机从集合中弹出一个元素并删除该元素
spop key1
随机从集合中取出元素,但不会删除元素,后面的1表示取出元素的个数
srandmem