首先我们知道redis的数据库默认有16个,而我们当前默认使用的是第0个,如果需要切换数据库则使用命令:
select 1
image.png
如果需要清空数据库,请谨慎使用,命令:
flush db 代表清空当前数据库的数据
flush all 代表清空所有数据库的数据
1. String字符串类型
image.png- 在redis里面存储的是键值对类型的数据,所以字符串类型也就是key对应的是一个字符串,
在上述图中 keys 表示查询key的命令,如果重复的设置key值,那么key对应的value是会被覆盖掉的。 - setnx 表示设置的key如果存在则不设置,不存在则设置值
- ttl 表示time to leave 意思就是查看过期时间,如果是-1则表示无过期时间
- 设置过期时间使用命令 expire 例如 expire age 30 表示age这个key的过期时间是30s,如果过期则key的过期时间为-2
- 还有一种设置过期时间命令: set age 30 ex 20 表示这个key值的过期时间是20
- 过期之后,再查询这个key就会得到null的值
- append name 123 表示会再nam这个key的值后面追加123
- strlen name 表示获取nake这个key的值的长度
- incr age 表示累加的意思,age的值加一 decr 代表累减的意思
- incrby age 10 表示在原有值基础上加10 decrby相反
- type age 代表获取age这个key的数据类型
- getrange name 0 -1 代表的是截取name,从0下标到-1下标,如果是-1代表无穷大
- setrange name 1 abc 表示key的值,从下标1开始用abc来替换原有的数值
- mset mget 代表的是批量的设置或者获取值,例如:mset k1 aa k2 bb然后使用mget k1 k2
输出就是 aa bb - msetnx 表示的是如果没有重复的key,则可以成功设置
2. Hash类型
Hash类型比较类似于java中的map数据类型,value可以是一个对象,例如我们要存储的对象是:
user:{
name:wang
age:20
sex:man
}
可以这么设置:
image.png
其中hset代表单个属性的赋值,hmset代表批量的赋值,hlen user表示后去user中属性的个数
image.png3. List类型
image.png image.png可以看到lpush和rpush的区别,lpush就是从所有要放的数据的左边开始一个个的放入list中,而rpush则相反。
image.png
- llen list 表示获取list的长度
image.png image.png image.png
4. Set类型
set类型于list不同,list中你可以添加多个重复的数值,但是set中就不会,他会自动的去重
image.png image.png image.png image.png image.png
5. zset类型
zset代表的是有顺序的set集合,原理是zset中有一个score分数这样的属性跟值绑定在一起,做排序。
image.png image.png image.png
-
zcard zset 表示获取集合zset的长度
-
zcount zset 20 40 表示获取20分到40分中间的所有数据条数
如果需要大于20的,就可以使用 )20
image.png image.png
网友评论