Redis基本通用命令

通用命令

查看使用文档,例如要查看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

扫描二维码关注公众号,回复: 15010468 查看本文章
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

猜你喜欢

转载自blog.csdn.net/weixin_53236380/article/details/128812693