《从0学习Redis6》(二) --- 常用数据类型 | 8月更文挑战

299 阅读3分钟

Redis入门篇(二)

本期文章我们将着重讲解五大基本数据类型的入门

往期文章

Redis可视化管理工具 - Redis Desktop Manager

链接:pan.baidu.com/s/1xom9Fbql…
提取码:6666

image.png

按照步骤连接redis 远程服务器redis 需开启端口防火墙

可在setting中切换中英文

image.png

连接成功后可以看到共16个数据库,默认在db0进行操作

Redis的五大数据类型 - string

string类型是最常用,最基本的类型,很多Java对象也可用JSON字符串的形式进行存储

常用命令

命令不区分大小写
存入中文 会乱码 使用 ./redis-cli --raw set key value 设值
get key 取出
MSET key value [key value ....] 同时设多个值
MGET key [key ...] 同时取多个值
INCR key 增加数值
INCRBY key inrcement 增加指定的整数
DECR key 递减数值
DECRBY key decrement 减少指定的整数
STRLEN key 获取字符串长度

分布式锁的相关内容将在后续着重讲解
setnx key value
set key value[EX seconds][PX milliseconds][NX|XX]

carbon.png

应用场景

  • 用于存储用户的基本信息
  • 基于incr key 存储文章的点击数存储
  • 抖音直播无限点赞等
  • ......

Redis的五大数据类型 - hash

类似于Java中的 Map<String,String> HMSET key field value [field value ...] 设置值 HMGET key field [field ....] hgetall key hlen hdel

carbon (3).png

Redis的五大数据类型 - list

一个双端链表的结构, 容量是2的32次方减1个元素,大概40多亿,主要功能有push/pop等,一般用在栈、队列、消息队列等场景。由于是双端链表结构,所以对两端操作很快,中间数据操作较慢

常用命令

LPUSH key value [value ...] 向列表左边添加元素
RPUSH key value [value ....] 向列表右边添加元素
LRANGE key start stop 查看列表
LLEN key 获取列表中元素的个数

carbon (1).png

应用场景

  • 微信公众号订阅的消息
  • 商品评论列表

Redis的五大数据类型 - set

Redis Set 是 String 的无序排列。

常用命令

SADD key member [member ...] 添加元素
SREM key member [member ...] 删除元素
SMEMBERS key 遍历集合中的所有元素
SISMEMBER key member 判断元素是否在集合中
SCARD key 获取集合中的元素总数
SRANDMEMBER key [数字] 从集合中随机弹出一个元素,元素不删除
SPOP key [数字] 从集合中随机弹出一个元素,出一个删一个
SDIFF key [key ...] 属于A但不属于B的元素构成的集合
SINTER key [key ...] 属于A同时也属于B的共同拥有的元素构成的集合
SUNION key [key ...] 属于A或者属于B的元素合并后的集合

carbon (2).png

应用场景

  • 抽奖小程序 sadd,scard,sismember,spop
  • 朋友圈点赞 sadd,srem,smembers,sismember等
  • 共同好友 sinter
  • 可能认识的人 sunion

Redis的五大数据类型 - zset

zse由唯一的不重复字符串元素组成。
但是,虽然未排序集合内部的元素,但排序集中的每个元素都与浮点值相关联,称为分数。

常用命令

ZADD key score member [score member ...] 添加元素
ZRANGE key start stop [WITHSCORES] 按照元素分数从小到大的顺序返回索引从start到stop之间的所有元素
ZSCORE key member 获取元素的分数
ZREM key member [member ...] 删除元素
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count] 获取指定分数范围的元素
ZINCRBY key increment member 增加某个元素的分数
ZCARD key 获取集合中元素的数量
ZCOUNT key min max 获得指定分数范围内的元素个数
ZREMRANGEBYRANK key start stop 按照排名范围删除元素
ZRANK key member 从小到大排名
ZREVRANK key member 从大到小排名

carbon (4).png

应用场景

  • 抖音热搜
  • 根据商品销售对商品进行排序显示
  • .....

总结

以上便是五种常用数据类型的常用命令以及应用场景了,之后会为大家带来代码实战的