redis:redis五大数据类型的详细介绍(二)

1、string

string是redis最基本的类型,一个key对应一个value
string可以包含任何数据,最大不能超过512M
通过上章的介绍使win和ubantu连接同一个redis服务器,用win来输入命令,ubantu来检查命令
①set key value:设置值
在这里插入图片描述
②get key:获取值
在这里插入图片描述
③mset key value key value:设置多个值
④mget key1 key2…:获取多个值
在这里插入图片描述
⑤append key value:添加字段返回的是字符串长度。可以直接添加数字python中字符串和数字不能直接追加
在这里插入图片描述
在这里插入图片描述
⑥del key1 key2…:删除
在这里插入图片描述
⑦strlen key:返回字符串长度,太显而易见不截图了
⑧expire key second:设置键的有效时间key必须存在(验证码的有效时间)
在这里插入图片描述
⑨setex key seconds value:添加键并且设置有效时间
在这里插入图片描述
incr key:给key值加1
decr key:给key值减1
incrby key increment:给key增加指定值
decrny key decrement:给key减少指定值
getrange key start end:获取指定区间范围内的值,类似between…and的关系类似于切片但他是双闭合
setrange key offset value:代表从第几位开始替换,下脚标从零开始
在这里插入图片描述
从0 -1表示全部
help @string:可以显示所有string的命令
在这里插入图片描述
redis中string的应用场景:共享session信息,在服务器中保存用户的登录状态的信息
在这里插入图片描述

2、list

通过vim编辑文件时可以通过esc+(:/输入自己想要查找到内容按键盘n即next可以查找想要搜索的内容)
①lpush key value[value]:从左边往列表中添加值,取得时候类似于栈,先进后出
在这里插入图片描述
②lrange key start stop:将key中的数据取出,要指定开始和结束,类似于切片,不同的是他是双闭合区间取值,他不改变原列表
在这里插入图片描述
③rpush key value [value]:从右边往列表中添加值,取得时候类似于队列先进先出

在这里插入图片描述
④lpop/rpop key:从左往右删除/从右往左删除一个元素
在这里插入图片描述
⑤lindex key index:按照下标索引取值,如果超过列表索引不会报错,会返回nil代表空
在这里插入图片描述
⑥llen key:求列表长度
在这里插入图片描述
⑦lrem key count value:删除指定个数的指定key中的指定元素
count>0:表示表头开始向表尾搜索删除
count<0:表示表尾开始向表头搜索删除
count=0:表示删除所有的value
rem 1 2 4:代表在1这个列表之中删除2个4,删除的顺序是从表头开始删除的
在这里插入图片描述
⑧ltrim key start stop:将key中的数据取出,要指定开始和结束,类似于切片,不同的是他是双闭合区间取值,他改变了原列表
在这里插入图片描述
⑨lset key insex value:将指定列表中的元素替换
在这里插入图片描述
⑩linsert key before|after pivot value:在某个元素之前/之后插入一个元素,从表头开始查找,查找到了插入
在这里插入图片描述
应用场景
在这里插入图片描述

3、hash

hash是一个键值对集合
hash是一个string类型的field和value的映射表,hash特别适合存储对象
在这里插入图片描述
①hset key field value:创建一个名为hash的字段为field的值为value的表
②hget key field:通过hash表的key与字段取值
在这里插入图片描述
③hmset key field value[field value]/hmget key field value[field value]/:多写多取
在这里插入图片描述
④hgetall key:会把hash表中所有的数据取出
在这里插入图片描述
⑤hdel key field [field]
在这里插入图片描述
⑥hlen key/hexists key field:查看hash的长度,查看hash的字段是否存在
在这里插入图片描述
⑦:hkeys key/hvals key:返回所有的field字段/返回所有字段的值
在这里插入图片描述
⑧hincrby key field increment:给指定字段的值自增指定量,如果不存在,创建后在自增,初始创建量为增量
应用场景:商城中的购物车,key是用户的唯一标识,通过存储数据的id得到数据的具体信息
在这里插入图片描述

4、set无序集合

set是string类型的无序集合(不重复的)
①sadd key meber[meber]:创建并且添加值,通过smembers key查看
在这里插入图片描述
②sismember key member:判断集合中某成员在不在key中在1不在0
在这里插入图片描述
③scard key:获取集合里面元素的个数,如果没有则返回0

④srem key member [member]:删除key中的mumber可删除多个,只会删除已有的,如果没有不报错
在这里插入图片描述
⑤srandmember key [count]:随机出count个数,不写默认出一个,不修改原集合
在这里插入图片描述
⑥spop key [count]:删除原集合的元素
⑦smove source destination member:把source里面的member移动到destination中,类似于剪切,如果没有目标集合则自动帮忙创建一个
在这里插入图片描述
sadd set01 1 2 3 4 5
sadd set02 1 2 3 a b
差集
sdiff set01 set02 返回 4 5 在第一个set中不在第二个set中
交集
sinter set01 set02 返回 1 2 3
并集
sunion set01 set02 返回set01 set02 中的值 去掉重复
应用场景:微博关注、中奖名单,保证不会重复

5、zset有序集合

他会按照数字给定的大小由小到大进行排序如果字段相同则覆盖,如果值相同则按照进栈顺序从表头开始排序
①zadd key score member [score member]:向zset中存数据
②zrange key start stop [withscorces:携带分数]:查看key中的内容
在这里插入图片描述
③zrangebyscore key min max [withscores显示分数]limit 1 2:根据最小最大区间取值,取到的值从第一个开始截取截取两个
在这里插入图片描述
左边加括号表示不包含的意思,右边不能加,
在这里插入图片描述
④zrem key member [member]:删除字段
在这里插入图片描述
⑤zcrad key/zcount key min max: 求key总条数/求key中min-max个数
⑥zrank key member :返回对应元素的小角标
应用场景:做排序,成绩排名等

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值