redis常用命令

1.String   k-v  单个key最大能存 521MB, 约等于多少个文字呢?
增(改): 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     incrby mycode 50
定量减:decrby    decrby mycode 50

批量增:mset key1 value key2 value
批量增: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.exist key值是否存在,很常用! 返回值是1 或者0, 1代表存在,0代表不存在
3.exprire  给key 做一个过期时间,写的值是 过期秒数  例子: set phoneCode 3343,  expire phoneCode  60
                  到期之后,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 抽奖常用的,点名   作业4:做一个随机点名程序,被点到的人 移除出去


二:Hash 哈希 类型  适合存储对象
增:hset    例子:hset food name 'apple'
批量增: hmset food name 'apple' color
批量查:hmget human name age
查:hget food color
查所有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 hero before "刘备"         hero就是key
查单:lindex hero 0
删除指定的值 比较复杂 lrem hero count value
count >0 表示 从头向尾巴, 从左到右 搜索,移除何 value 相等 元素,数量为count
count >0 表示 从尾巴向头, 从右到左 搜索,移除何 value 相等 元素,数量为count 的绝对值
count = 0 表示 移除表中所有与value相等的值
注意:因为list的数据类型,所以值是可以 相同的,比如 有两个tangseng

四:set 数据类型,set无序,不能重复,做扑克牌
增:sadd key value
查条数:scard 获取 key 的成员数量
查全: smembers  返回集合中的所有value
按索引查单??没有    因为没有顺序,就没索引
指定删除:srem key value
随机删除! 作业:用java代码写,把咱们班33个人的名字 形成一个集合,点一个人的名字,就把这个人的名字移除,再次点名 是把32个人的随机中的一个
随机删除:spop names
随机查:srandmember

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

以上就是redis常用的命令

### Redis 常用命令及使用方法 #### 查找匹配的键 为了查找所有符合特定模式的键,可以使用 `KEYS` 命令。此命令接受一个模式参数并返回所有与该模式相匹配的键名[^2]。 ```bash KEYS pattern ``` 例如,要找到所有以 "user:" 开头的键: ```bash KEYS user:* ``` 需要注意的是,在生产环境中应谨慎使用 `KEYS`,因为它可能会阻塞服务器进程。推荐替代方案是使用 `SCAN` 命令来遍历键空间。 #### 获取和设置字符串值 对于简单的键值操作,可利用如下两个基础命令: - **SET**: 将指定 key 设置为 value。 ```bash SET mykey "Hello" ``` - **GET**: 返回给定 key 的 string 类型 value。 ```bash GET mykey ``` 这两个命令适用于处理基本的数据存储需求。 #### 列表(List)操作 Redis 支持双向链表形式的数据结构——List, 提供了一系列用于管理列表项的操作指令。 - **LPUSH/RPUSH**: 向列表头部/尾部添加元素 ```bash LPUSH list-key element1 [element2 ...] RPUSH list-key element1 [element2 ...] ``` - **LPOP/RPOP**: 移除并获取列表的第一个/最后一个元素 ```bash LPOP list-key RPOP list-key ``` 通过上述命令能够方便地实现队列或栈的行为模拟。 #### 集合(Set)成员关系判断及相关运算 当涉及到唯一性的维护以及交集、并集等集合论概念时,则需要用到 Set 数据类型下的功能函数。 - **SADD**: 添加一个或多个 member 元素到名称为 key 的 set 中;如果某个 member 已经存在则不会重复加入 ```bash SADD set-key member [member ...] ``` - **SMEMBERS/SISMEMBER**: 查询整个集合的内容或是检验某元素是否属于当前集合 ```bash SMEMBERS set-key SISMEMBER set-key member ``` 以上列举了一些常见的 Redis 操作方式,具体应用场景还需根据业务逻辑灵活选用合适的 API 接口[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值