示例:设置key为name,value为jack的一条数据
对应操作命令如下:
示例:获取到key为name的值
操作命令如下:
示例:设置一个key为code值为1234且有效时间为30s
命令如下:
由上面可以看出,当在30s之内可以获取到这条数据,但是30s之后,这条数据就失效了。
示例:继续设置一个已有key为name的值
命令如下:
如上:key为name已经存在,当继续设置时就会设置失败,而里面的值还是之前的jack而不是新设置的jack。
值得注意的是,如果继续用上面的set key value命令时,就可以覆盖掉原先的值,如下:
Redis的hash是一个string类型的field和value的映射表,hash特别适合用于存储对象,常用命令如下:
示例:定义一个学生对象,学生的名字是zhangsan,年龄是18.
得到一个student对象:
示例:我想要获取student对象的姓名:
注意!
从我的理解来说,它只能存储单个对象,因为student可能包含很多个对象,但是你不能继续设置另外一个student的name为lisi,这样会覆盖掉前面的name值zhangsan。
示例:删除student对象里面的name的值
示例:获取student对象所有的字段(name,age)
示例:获取student对象所有的值(zhangsan , 18)
Redis 列表是简单的字符串列表,按照插入顺序排序,常用命令如下:
示例:向一个list列表中存入1,2,3
示例:取出list列表中所有值
编辑
示例:删除并获取list列表最后一个元素
示例:获取当前list列表的长度
Redis set是string类型的无序集合。集合成员是唯一的,集合中不能出现重复的数据,常用命令如下:
示例:定义一个集合set1,往里面添加a,b,b,d四个元素
再来看看集合里面的元素是不可重复的:
示例:返回set1集合中的所有元素
示例:返回set1集合的元素个数
示例:再定义一个set2集合,往里面存入元素a,b,x,y 四个元素,然后求集合set1和集合set2 的交集(a,b)
示例:求集合set1和set2的并集(a,b,c,d,x,y)
示例:删除set1集合中的a,b两个元素
Redis 有序集合是string类型元素的集合,且不允许有重复元素。每个元素都会关联一个double类型的分数(score)。常用命令如下:
表示 给元素member1增加一个关联的分数,后面按照关联的分数对元素进行排序,也就是说每个元素关联的分数是自己定义,这就相当于给每个元素自定义排序.
示例:向有序集合zset里面添加元素a,b,c他们的socre分别是3,2,2.5
注意他们的存储顺序,在下一个命令体现
可选值withscores: 表示连同元素关联的分数也一起返回。
示例:返回所有元素(区间固定0 -1 就是返回所有元素),并且返回score以方便查看默认的排序规则
由上面可以看出,元素默认是按照score从小到大进行排序的
虽然规定只能在原有的分数score基础上进行增加,但是如果你将increment的值设置为负数,那么也就相当于减了。该作用旨在改变元素的排序
示例:对zset集合里面的a元素的score减2
示例:移除zset有序集合里面的a和c元素
Redis 的通用命令是不分数据类型,都可以使用的命令
示例:查找所有以list结尾的key和查找所有的key
示例:检查list这个key是否存在,再检查一个不存在的key
示例:返回list和student两个key分别存储的类型
示例:删除key为list