网站模板 wordpress,仿美团网站开发,装修价格,公司网站建设外包前言#xff1a;
上一节课#xff0c;我们对redis进行了初步了解#xff0c;和安装好了redis。【速成Redis】01 Redis简介及windows上如何安装redishttps://blog.csdn.net/weixin_71246590/article/details/142319358?spm1001.2014.3001.5501
该篇博客#xff0c;我们正…前言
上一节课我们对redis进行了初步了解和安装好了redis。【速成Redis】01 Redis简介及windows上如何安装redishttps://blog.csdn.net/weixin_71246590/article/details/142319358?spm1001.2014.3001.5501
该篇博客我们正式开始学习redis的操作。
上节课我们讲到redis的数据类型有如下几种 本篇我们将讲解redis五大基本数据类型也是就上图的第一列的常用语句。
食用说明初学者建议边看边看边敲。复习者可根据目录快速复习某个命令。 目录
1.字符串String
设置键值对set key value
根据键取其值get key
删除某个键del key
判断一个键是否存在exists key 查找所有的键keys *
查找所有以ge结尾的键*ge
删除所有的键flushall 如何设置带有过期时间的键值对
- setnx 和setex 的区别
2.list列表
lpush头插元素
lrange查看当前元素
lpop、rpop 命令也可以一次性删除多个元素
删除操作
3.集合Set
新建/增加set中的元素sadd set x y z
查看set中的成员smember set
判断某个元素是否在set中sismember set element
删除set中某个元素 srem sourse element
4.有序集合sortedSet
创建一个集合/追加元素zadd
查看集合中的元素zrange
查看某个成员分数zscore
查看某个成员排名从大到小zrevrank
- 删除有序集合中的某个成员ZREM
- 对某个成员的分数进行增加ZINCRBY
- 删除某个排名范围内的成员ZREMRANGEBYRANK
5.哈希Hash hset用法示例设置名为person的集合的键值对
hget用法示例 查看名为person的某个key对应的value
hgetall查看某个集合里的所有的键值对
hdel删除某个集合里的某个键值对
hexists查看某个集合里的某个键值对是否存在 hkeys获取所有键值对的key hlen获取所有键值对的数量 1.字符串String redis insight 中也可以使用命令行。 - redis中的值以键值对的方式存储。
设置键值对set key value
根据键取其值get key - redis里的键区分大小写 - redis里默认使用字符串存储数据并且是二进制安全的我们可以把很多类型的数据存储到redis当中比如数字布尔类型序列化后的对象等。 删除某个键del key 判断一个键是否存在exists key 查找所有的键keys * 查找所有以ge结尾的键*ge 删除所有的键flushall psredis中的值都是以二进制的形式存储的默认是不支持中文的 中文 - 二进制 \x表示后面的是16进制 解决办法
在连接服务时候加上一个raw参数表示以原始形式显示内容 redis-cli --raw 跟着练习的小伙伴们这时候的命令行窗口已经很满了我们需要清空屏幕 清空屏幕clear 如何设置带有过期时间的键值对
- TTL命令查看键的过期时间time to live 表示这个键还有多久过期 ttl key - 给已经存在的key设置过期时间 expire key 10 默认为单位为秒 - 直接新建一个带有过期时间的键值对 setex key seconds value - setnx 和setex 的区别
setnx key value当键不存在时才新建该键当键已经存在时不做任何动作。
set key value当键不存在时新建该键。当键已经存在时覆盖原value。 2.list列表 一般用来存储和操作一组有顺序的数据类似数组。 lpush头插元素 lrange查看当前元素 lpush可以一次性添加多个元素~ 当前list中的状况 通过观察我们可以知道lpush是头插法元素添加到list头部 rpush是尾插法元素添加到列表尾部其用法与lpush类似。 看这个图可以理解四个关键字进出都有两个方向 l代表左边leftr代表右边right lpop、rpop 命令也可以一次性删除多个元素 一次性删除两个元素lpop list 2 注意redis版本大于6.2.0才能一次性删除多个元素 查看列表元素llen list 实现简单的消息队列可以用 rpop让队尾的元素出队 用lpush让心元素进队头。 删除操作 删除一个整个队列:del list 删除列表元素理解为保留列表指定范围x-y内的元素ltrim list x y 3.集合Set set 为无序不重复集合就是我们在数学上的那个集合。 list中的元素可以重复而set中不可以。 set的命令以s开头 新建/增加set中的元素sadd set x y z 查看set中的成员smember set 验证set的唯一性尝试添加已有元素 0 通常表示命令没有对目标数据造成实际变化影响的元素数为 0。 判断某个元素是否在set中sismember set element 删除set中某个元素 srem sourse element 图片标注那里有个错别字啊啊啊见谅 我是故意的让大家记住srem 集合的运算 两个集合之间的交集、并集等运算redis当中也是支持的。 4.有序集合sortedSet 有序集合可以理解为优先级队列每个元素有一个分数代表权重。 创建一个集合/追加元素zadd
查看集合中的元素zrange 使用例子 注意使用zadd关键字时是先分数再成员。 查看某个成员分数zscore zscore key member 查看某个成员排名从小到大zrank zrank result member 注意下标是从0开始的这里的排名值的是升序排序从小到大的排名。 查看某个成员排名从大到小zrevrank zrevrank result member - 删除有序集合中的某个成员ZREM
可以使用 ZREM命令来删除有序集合中的某个或多个成员。 ZREM key member [member ...] 示例 ZREM result alice - 对某个成员的分数进行增加ZINCRBY
可以使用ZINCRBY命令为有序集合中的某个成员增加指定的分数。 ZINCRBY key increment member 示例 ZINCRBY result 10 sally - 删除某个排名范围内的成员ZREMRANGEBYRANK
可以使用 ZREMRANGEBYRANK 命令根据成员的排名范围删除成员。排名是按分数从低到高排列。 ZREMRANGEBYRANK key start stop 示例 ZREMRANGEBYRANK result 0 2 该命令将删除 result 集合中排名从 0 到 2 的成员排名从 0 开始。 5.哈希Hash 哈希是一个字符类型的字段和值的映射表。键值对的集合。特别适合存储对象。 前面我们在学习字符串时所使用的set和get的操作在这里变成hset、hget 我们现在有一个对象person 其nametaylor 其age32 hset用法示例设置名为person的集合的键值对 hget用法示例 查看名为person的某个key对应的value hgetall查看某个集合里的所有的键值对 hdel删除某个集合里的某个键值对 可以看到删除完之后只剩person了。 hexists查看某个集合里的某个键值对是否存在 1表示name存在0表示age不存在。 注意这里的exists是有s的可以理解为第三人称单数 hkeys获取所有键值对的key hlen获取所有键值对的数量