Redis常用命令

一:String 类型

1.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的 特有命令

批量增: mset key1 value key2 value
批量查: mget key1 key2
字符串截取: getrange key start end 用索引
先查再存: getset , 格式 getset key value
将给定的key 的值设置value ,并返回 key 旧值 应用场景: 工资
(重要)自增(减): incr 场景 : 抖音点赞,产品的热销排行, 自增的
定量增: incrby incrby mycode 50
自减: decr key
定量减: decrby decrby mycode 50
过期时间(重要): setex 村的时候就直接给定一个过期时间, 验证码就用它
先时间 后是 value 格式: setex code 60 lalala
字符串长度: 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
    到期之后,key 自动删除 这个很常用!!
  4. ttl 查询 还剩余多少时间 过期 秒为单位,应用场景,1) 订单 15分钟有效, 2)考试
  5. persist 移除 key 的过期时间,将key 保持为持久状态,, 开票
  6. rename 更改key 值,这个不常用!! 自己测试
  7. renamex 当 key 新的 key 不存在时,改名为 新名字,了解。。
  8. type key 返回 key 的数据类型 – 5中
  9. randomkey 随机出key 抽奖常用的, 点名,随机点名

二: Hash 哈希 类型。 适合存储对象

增: hset person name ‘dididi’
删: hdel person name
批量增: hmset food name “apple” color “red”
查: hget food color
批量查: hget human name age
查所有的key: hkeys food
查所有的key 和 value : hgetall human
hash 字段的自增: hincrby human age 10
key person value 一堆 k-v 组合
hash 数据类型的遍历: Hscan 不怎么常用 ,自己测试

三: list – 双端队列结构。先进后出,排序是 按照 插入的顺序排序的

比如: 沙和尚 猪八戒 孙悟空 唐僧 刘备 关羽 张飞 赵云
从左边增: lpush key xxx
从右边增: rpush key xxx
遍历: lrange key 0 -1
左边删除: lpop key
右边删除: rpop key
插入指定元素之前: linsert key before “liubei” “didi” 把didi插入刘备之前
单查: lindex hero 0
删除指定的值: 比较复杂 lrem hero count value
count > 0 从头向尾巴,从左到右 搜索,移除和 value 相等 元素,数量为count
count < 0 从尾巴向头,从右到左 搜索,移除和 value 相等 元素,数量为count 的绝对值
count = 0 表示移除所有与 value 相等 的值
注意: 因为是list 的数据类型,所以值是 可以相同的,比如 有两个 相同的值,

四:set 数据类型,set 无序,不能重复,做扑克牌

增: sadd key value
查条数: scard 获取key 的成员数量
查全: smembers key 返回集合中的 所有成员(value)
按索引查单???: 没有,因为没有顺序
指定的删除: srem key value
随机删除!用途很广,: spop names
作业: 用Java代码写,把咱们班3个人的名字 形成一个集合,随机点一个人的名字,把这个人的名字移除,再次点名就没有这个人了
随机查: srandmember

五:zset sortset,有序的set集合 ,可以有序但是不重复

他是 set 扩展版,每个元素都关联了个 double 类型的分数,根据分数的大小进行排序
排序的规则是 从小到大,分数可以并列,即 分数可以重复,,成员(value) 必须唯一
底层是 哈希表实现的,添加删除 很快
增加: zadd key 分数 值, pnames
遍历: zrange key 0 -1 withscores 加上withscores 带分数,不带 直接全部显示值
查条数: zcard key
指定删除: 移除集合中的一个或者多个成员 zerm key value

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值