通用命令
查看使用文档,例如要查看select怎么使用
help select
切换数据库
select 1
查看符合模板的所有key
keys *
keys *a
keys a*
判断key是否存在
exists k1
给key设置有效期,给k1设置20秒有效期
expire k1 20
查看key剩余有效期,查看k1剩余有效期,单位都是秒,-1代表永久有效,-2代表已过期
ttl k1
Key的层级格式
存
set hrbu:student:1 '{"id":1,"name":"小明","age":18}'
set hrbu:student:2 '{"id":2,"name":"小红","age":18}'
set hrbu:teacher:1 '{"id":1,"name":"王老师","age":30}'
set hrbu:teacher:2 '{"id":2,"name":"李老师","age":31}'
在可视化操作界面查看层级关系
String类型命令
存一个name为Jack
set name Jack
获取值
get name
将name改为Rose
set name Rose
一次性存多组键值对
mset name Jack age 18
一次性取出多个值
mget name age
数值类型自增1
incr age
指定步长自增
incrby age 2
自减将值改为负数即可
incrby age -2
浮点数自增,注意浮点数没有默认步长,必须指定步长
incrbyfloat num 0.5
新增键值对,如果键存在不做修改
setnx name Lisa
等价于
set name Lisa nx
新增键值对并指定有效期
setex name 10 Lisa
等价于
set name Lisa ex 10
Hash类型命令
存
hset hrbu:student:3 id 3
hset hrbu:student:3 name 小王
在可视化界面查看一下
将name改为小张
hset hrbu:student:3 name 小张
查询单个字段
hget hrbu:student:3 name
一次存多组
hmset hrbu:student:4 id 4 name 小刚 age 19
查询多个字段
hmget hrbu:student:4 id name age
返回所有键值对
hgetall hrbu:student:4
获取所有的key
hkeys hrbu:student:4
获取所有的value
hvals hrbu:student:4
指定字段自增,负数就是自减
hincrby hrbu:student:4 age 2
当前字段不存在就新增,否则不操作
hsetnx hrbu:student:4 age 1
List类型命令
从左边插入
lpush letters a b c
查看一下图形化界面
从右边插入
rpush letters d e f
从左边取出,不指定count默认取出一个
lpop letters
把c取出来了
再从右边取两个
rpop letters 2
把e和f取出来了
返回一段角标范围内的元素,并不移除
lrange letters 0 2
获取时指定等待时间,如果没有并不第一时间返回nil,超时未获取到才返回nil
blpop letters 10
rlpop letters 10
Set类型命令
既然是集合,那么其中的值是不可重复的
添加
sadd s1 a b c
查看一下图形化界面
查看所有
smembers s1
查看有无指定value
sismember s1 a
删除指定值
srem s1 a
查看元素数量
scard s1
取两个集合的交集
sinter s1 s2
取两个集合的差集
sdiff s1 s2
取两个集合并集
sunion s1 s2
SortedSet类型指令
添加一个或多个元素
zadd ss1 98 xiaoming 81 xiaohong 60 xiaowang 59 xiaoqiang 40 xiaozhang 100 xiaozhou
删除指定元素
zrem ss1 xiaozhang
获取指定元素的score值
zscore ss1 xiaowang
获取指定元素的排名
zrank ss1 xiaozhou
获取元素个数
zcard ss1
统计score值在指定范围内的元素个数
zcount ss1 60 80
让指定元素自增,注意这步长紧跟在key后面
zincrby ss1 2 xiaozhang
指定排名范围内的元素
zrange ss1 1 3
获取指定score范围内的元素
zrangebyscore ss1 60 80
取差集、交集、并集
zdiff
zinter
zunion
ps:排名默认是升序,如果要降序需要在z后面加rev,例如
zrevrange ss1 1 3