一、.String k-v 单个key 最大能存 512 MB,约等于 多个文字 增(改): set key value 例子:set adminName 'zhangsan' 查:get key 例子: get adminName 查询所有的key: keys * 例子: keys * 删key:del key 例子:del adminName String 特有命令 (重要)过期时间: setex存的时候就直接给定一个过期时间。验证码就用它 setex code 60 3432423 (重要)自增(减)incr 场景:抖音点赞,产品的热销排行。自增的值一定是数字 自减:decr key 定量增:incrby 定量减:decrby 批量增: mset key1 value1 key2 value2 批量删:mget key1 key2 字符串截取:getrange key start end 先查在存:getset ,格式getset key value 将给定的key值设置value,并返回key的旧值。工资! 先时间,后value 字符串长度:strlen key 的长度,不存在的key 的长度是0 字符串的追加:append key value,追加的位置是 value的末尾 //其他的通用命令 1. dump给定key中的值进行序列化,返回值是序列化后的值,了解** 2. exists key值是否存在.,.很常用!返回值是1或者0 ,1代表存在0代表不存在 3. expire 给key 做一个过期时间·,写的值是过期秒数例子: set phoneCode 3343 ., expire phoneCode 60 到期之后,key自动删除,这个很常用!!! 4.ttl 查询 还剩余多少时间 过期 秒为单位 5.persist 移除key的过期时间,将key保持为持久状态。 6.rename 更改key值 不常用!! 7.renamenx 当key 新的值不存在时,改名为 新名字 8.type key 返回key的数据类型----5个 9.randomkey 随机出key 抽奖常用的 点名。 二、Hash 哈希类型。适合存储对象 增:hset 例子:hset food name ‘apple’ 删:hdel food name 批量增:hmset food name ‘apple’ color ‘red’ 批量查:hmget human name age 查:hget food color 查所有key:hkeys food 查所有的key 和value:hgetall human hash字段的自增: hincrby human age 10 key person value 一堆 kv组合 hash数据类型的遍历:Hscan 不常用 三、list -- 双端队列结构 先进后出,排序是按照 插入的顺序排序 左边增:lpush key xxx 右边增:rpush key xxx 遍历:lrange key 0 -1 左删除:lpop key 右删除:rpop key 插入:linsert key brfore xxx(之前) xxx(插入的内容) 查单 lindex hero 0 删除指定的值 比较复杂 lrem hero count value count > 0 表示 从头向尾巴, 从左到右 搜索,移除何 value 相等 元素, 数量为 count 。 count < 0 表示 从尾巴向头, 从右到左 搜索,移除何 value 相等 元素, 数量为 count 的绝对值 。 count = 0 表示 移除表中所有与value相等的值。 注意: 因为是list 的数据类型, 所以 值是可以 相同的, 比如 有 2个 chaoyang ,2个tangseng 四: set 数据类型, set 无序,不能重复, 做扑克牌, 增: sadd key value 查条数: scard key 获取 key 的成员数量 查全: smembers key 返回集合中的所有value 按索引查单????? 有没有。 sindex names 2 没有的,,,, 因为没有顺序 指定删除:srem key value 随机删除!用途很广, spop key 作业:用java代码写,把咱们班33个人的名字 形成 一个集合, 运行后随机点一个人的名字,就把这个人的名字移除。 再次 点名是 点 32个人的随机中的一个。 随机查:srandmember 五:zset sortset , 有序的set集合。 可以有序但是不重复。 他是 set 的扩展版, 每个元素都关联了个 double 类型的分数,根据分数的大小,进行排序。 排序规则是 从小到大。 分数可以并列即 分数可以重复。, 成员(value)必须唯一。 底层是 哈希表实现的, 添加删除 很快 增加: zadd key 分数 值 , pnames , 遍历: zrange key 0 -1 withscores 加上withscores 带分数, 不带 直接全部显示值 查条数: zcard key 指定删除: 移除集合中的一个或者多个成员 zrem key value
09-03
1456
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
07-16
398
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)