Redis的常用命令小结

2023-12-09 0 442
目录
  • 1. Redis 数据结构
  • 2. Redis 通用命令
  • 3. String 类型
  • 4. Hash 类型
  • 5. List 类型
  • 6. Set 类型
  • 7. SortedSet 类型

1. Redis 数据结构

Redis 是一个键值对的数据库, 也就是 key-value 类型的, 这里的 key 一般都是String类型的, value的类型可以有多种.

基本类型:

  • String 类型
  • Hash 类型
  • List 类型
  • Set 类型
  • SortedSet 类型

特殊数据类型:

  • Gerspatial 地理位置
  • Hyperloglog 基数计数
  • BitMap 位图

2. Redis 通用命令

命令作用KEYS查看所有符合模板的keyDEL删除一个指定的keyEXISTS判断key是否存在EXPIRE给key设置有效期,到期会删除keyTTL查看key的剩余有效期HELP [command]查看命令的具体用法

注: Redis 的key允许有多个单词形成层级结构, 多个单词之间用:隔开, 例如 blog:user:1

① KEYS

Redis的常用命令小结

② DEL

Redis的常用命令小结

③ EXISTS

Redis的常用命令小结

④ EXPIRE

Redis的常用命令小结

⑤ TTL

这里返回 -2 就是删除了返回 -1 就是存在且没有过期时间

Redis的常用命令小结

Redis的常用命令小结

⑥ 层级结构

Redis的常用命令小结

Redis的常用命令小结

Redis的常用命令小结

3. String 类型

value 为String类型, 根据不同的字符串格式, 也可以分为几类

  • string: 普通字符串
  • int: 整数
  • float: 浮点数

注: 字符串类型最大空间不能超过512M

可以使用help @string 来查看string类型的所有方法, 这里展示一些常用的命令.

命令作用SET [key] [value]添加或者修改已经存在的一个 String 类型的键值对GET [key]根据 key 获取 String 类型的 valueMSET [key] [value] ( [key] [value] …)批量添加多个 String 类型键值对MGET [key] ( [key] …)根据多个key获取多个String类型的valueINCR [key]让 key 自增1个INCRBY [key] [increment]让 key 自增 increment 个INCRBYFLOAT [key] [increment]让浮点型 key 自增 increment 个SETNX [key] [value]添加一个String类型键值对, 前提key不存在,否则不执行SETEX [key] [second] [value]添加一个String类型键值对并指定有效时间

① SET

Redis的常用命令小结

② GET

Redis的常用命令小结

③ MSET

Redis的常用命令小结

④ MGET

Redis的常用命令小结

⑤ INCR

Redis的常用命令小结

⑥ INCRBY

Redis的常用命令小结

⑦ INCRBYFLOAT

Redis的常用命令小结

⑧ SETNX

Redis的常用命令小结

⑨ SETEX

Redis的常用命令小结

4. Hash 类型

Hash类型的value, value内是 field+value 的格式

可以使用help @hash 来查看string类型的所有方法, 这里展示一些常用的命令.

命令作用HSET [key] [field] [value] ([filed] [value] …)添加或者修改hash类型key的field的值HGET [key] [field]获取一个hash类型key的field的值HMSET [key] [field] [value] ([filed] [value] …)批量添加多个hash类型key的field的值HMGET [key] [field] ( [field] …)批量获取多个hash类型key的field的值HGETALL [key]获取hash类型的key中所有的field和valueHKEYS [key]获取一个hash类型的key中所有的fieldHVALS [key]获取一个hash类型的key中所有的valueHINCRBY [key] [field] [increment]让hash类型key的字段自增HSETNX [key] [field] [value]添加一个hash类型的key的field的值, 如果存在就不执行

① HSET

这里hset可以添加一个,也可以批量添加

Redis的常用命令小结

② HGET

这里的hget只能获取一个key的field的值

Redis的常用命令小结

③ HMSET 和 HMGET

Redis的常用命令小结

Redis的常用命令小结

④ HKEYS 和 HVALS

Redis的常用命令小结

⑤ HINCRBY

Redis的常用命令小结

⑥ HSETNX

Redis的常用命令小结

5. List 类型

这里List可以看成一个双向链表特点: ① 有序 ② 元素可重复 ③ 插入删除快 ④ 查询速度一般

命令作用LPUSH [key] [element] ([element] …)向左侧插入一个或者多个元素LPOP [key]移除并返回列表左侧的第一个元素, 没有返回nilRPUSH [key] [element] ([element] …)向右侧插入一个或者多个元素RPOP [key]移除并返回列表右侧第一个元素, 没有返回nilLRANGE [key] [start] [stop]返回一段范围内的所有元素BLPOP [key] ([key]…) [timeout]在没有元素的时候等待指定时间, 而不是返回nilBRPOP [key] ([key]…) [timeout]在没有元素的时候等待指定时间, 而不是返回nil

① LPUSH

Redis的常用命令小结

Redis的常用命令小结

② LPOP

Redis的常用命令小结

Redis的常用命令小结

③ RPUSH

Redis的常用命令小结

Redis的常用命令小结

④ RPOP

Redis的常用命令小结

Redis的常用命令小结

⑤ LRANGE

Redis的常用命令小结

⑥ BRPOP

Redis的常用命令小结

Redis的常用命令小结

6. Set 类型

和Java的Set类似

特点: 1. 无序 2. 元素不可重复 3. 查找快 4. 支持交集. 并集, 差集功能

命令作用SADD [key] [member] ([member] …)添加一个元素SREM [key] [member] ([member] …)删除一个元素SCARD [key]返回元素个数SISMEMBER [key] [member]判断是否存在一个元素SMEMBERS [key]获取所有的元素SINTER [key] ([key] … )求key1 和 key2的交集SDIFF [key] ([key] … )求key1 和 key2的差集SUNION [key] ([key] … )求key1 和 key2的并集

案例 将下列数据用 Redis 的Set集合来存储A 的好友有: B , C , DB 的好友有: C , E , F利用Set的命令实现下列功能① 计算A的好友有多少人② 计算A和B的共同好友③ 查询是A的好友却不是B的好友的人是哪些④ 查询A和B的总共有哪些好友⑤ 判断B是否是A的好友⑥ 判断A是否是B的好友⑦ A删除B的好友

首先将好友存入到列表里

Redis的常用命令小结

Redis的常用命令小结

Redis的常用命令小结

① 计算A的好友有多少人

Redis的常用命令小结

② 计算A和B的共同好友

Redis的常用命令小结

③ 查询是A的好友却不是B的好友的人是哪些

Redis的常用命令小结

④ 查询A和B的总共有哪些好友

Redis的常用命令小结

⑤ 判断B是否是A的好友

Redis的常用命令小结

⑥ 判断A是否是B的好友

Redis的常用命令小结

⑦ A删除B的好友

Redis的常用命令小结

7. SortedSet 类型

是一个可排序的Set集合特点: 1. 可排序 2. 元素不重复 3. 查询速度快

命令作用ZADD [key] [score] [member] ([score] [member] …)添加一个或者多个元素, 如果存在,更新score值ZREM [key] [member] ([member] …)删除指定元素ZSCORE [key] [member]获取指定元素的score值ZRANK [key] [member]获取指定元素的排名ZCARD [key]获取元素个数ZCOUNT [key] [min] [max]统计指定范围内的元素个数ZINCRBY [key] [increment] [member]ZRANGE [key] [min] [max]获取指定排名范围内的元素ZRANGEBYSCORE [key] [min] [max]获取指定score范围内的元素ZDIFF [numkeys] key ([key] …)差集ZINTER [numkeys] key ([key] …)交集ZUNION [numkeys] key ([key] …)并集

所有排名默认是升序, 如果要降序在命令的Z后面添加REV即可, 例如ZREVRANK

案例

将班级的下列学生得分情况存入 Redis 的SortedSet中A 85, B 89, C 82, D 95, E 78, F 92, G 76实现以下功能① 删除D同学② 获取F同学的分数③ 获取C同学的排名④ 查询80分以下有几名同学⑤ 给F同学加2分⑥ 查出成绩前3名的同学⑦ 查出成绩80分以下的所有同学

首先将成绩存入Redis中

Redis的常用命令小结

Redis的常用命令小结

① 删除D同学

Redis的常用命令小结

Redis的常用命令小结

② 获取F同学的分数

Redis的常用命令小结

③ 获取C同学的排名

Redis的常用命令小结

④ 查询80分以下有几名同学

Redis的常用命令小结

⑤ 给F同学加2分

Redis的常用命令小结

⑥ 查出成绩前3名的同学

Redis的常用命令小结

⑦ 查出成绩80分以下的所有同学

Redis的常用命令小结

到此这篇关于Redis的常用命令小结的文章就介绍到这了,更多相关Redis 常用命令内容请搜索悠久资源以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 Redis Redis的常用命令小结 https://www.u-9.cn/database/redis/150534.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务