写在前面
今天我们继续学习 Redis。
Redis 常用数据类型
在 Redis 中,每个存储的键值对中,键是 String 类型,值可以是不同的数据类型。Redis 的索引是含头含尾的。
String
内存模型
常用指令
-
设置值
SET key value
: 设置一个 key/value。MSET key1 value1 [key2 value2 ...]
: 一次设置多个 key/value。SETEX key seconds value
: 设置一个 key 的有效期(秒),可以设置不存在的键。PSETEX key milliseconds value
: 设置一个 key 的有效期(毫秒)。SETNX key value
: 如果 key 不存在则设置值。MSETNX key1 value1 [key2 value2 ...]
: 同时设置多个 key,只有当所有 key 不存在时才会保存。
-
获取值
GET key
: 根据 key 获取对应的 value。MGET key1 [key2 ...]
: 一次获取多个 key 的 value。GETSET key value
: 获取原始 key 的值,同时设置新值。GETRANGE key start end
: 截取 value 的内容,从 start 到 end(含头含尾)。
-
其他操作
STRLEN key
: 获取对应 key 存储 value 的长度。APPEND key value
: 为对应 key 的 value 追加内容,返回修改后的总字符串长度。DECR key
: 数值类型的 -1 操作。DECRBY key decrement
: 根据提供的数据进行减法操作。INCR key
: 数值类型的 +1 操作。INCRBY key increment
: 根据提供的数据进行加法操作。INCRBYFLOAT key increment
: 根据提供的数据加入浮点数(不进行四舍五入)。
List
内存模型
常用指令
-
操作列表
LPUSH key value [value ...]
: 将某个值加入到列表的头部。如果列表不存在,会创建新列表。LPUSHX key value
: 在列表存在时,将值加入到列表的头部。RPUSH key value [value ...]
: 将某个值加入到列表的末尾。RPUSHX key value
: 在列表存在时,将值加入到列表的末尾。
-
获取和删除
LPOP key
: 从列表左边返回并移除第一个元素。RPOP key
: 从列表右边返回并移除第一个元素。LRANGE key start stop
: 获取指定范围内的元素。LLEN key
: 获取列表元素个数。LSET key index value
: 设置指定索引的值。LINDEX key index
: 获取指定索引位置的元素。LREM key count value
: 删除列表中指定的元素。LTRIM key start stop
: 保留列表中特定区间内的元素,删除其他元素。LINSERT key BEFORE|AFTER pivot value
: 在指定元素之前或之后插入新元素。
Set
内存模型
Set 是无序且不可重复的。
常用指令
-
操作集合
SADD key member [member ...]
: 向集合添加元素。SMEMBERS key
: 显示集合中所有元素。SCARD key
: 返回集合中元素的个数。SPOP key
: 随机返回并删除一个元素。SMOVE source destination member
: 从一个集合移动元素到另一个集合(必须是同种类型)。SREM key member [member ...]
: 从集合中删除指定元素。SISMEMBER key member
: 判断集合中是否包含某个元素。SRANDMEMBER key [count]
: 随机返回集合中的元素。
-
集合运算
SDIFF key [key ...]
: 返回第一个集合中不在其他集合中的元素。SINTER key [key ...]
: 求集合的交集。SUNION key [key ...]
: 求集合的并集。
Sorted Set (ZSet)
内存模型
Sorted Set 是可排序的集合,元素不可重复,并且具有分数。
常用指令
- 操作有序集合
ZADD key score member [score member ...]
: 添加元素到有序集合。ZCARD key
: 返回集合的元素个数。ZRANGE key start stop [WITHSCORES]
: 返回指定范围内的元素(升序)。ZREVRANGE key start stop [WITHSCORES]
: 返回指定范围内的元素(降序)。ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
: 按分数查找范围内的元素。ZRANK key member
: 返回元素的排名(升序)。ZREVRANK key member
: 返回元素的倒序排名。ZSCORE key member
: 显示元素的分数。ZREM key member [member ...]
: 移除某个元素。ZINCRBY key increment member
: 为元素增加分数。
Hash
内存模型
Hash 的 value 是一个 map 结构,存储键值对。Redis 中的 Hash 类似于 Map
类型,键无序。
常用指令
-
操作哈希
HSET key field value [field value ...]
: 设置一个或多个 key/value 对。HMSET key field value [field value ...]
: 设置多个 key/value 对。HSETNX key field value
: 设置一个不存在的 key 的值。
-
获取哈希值
HGET key field
: 获取指定 field 对应的 value。HGETALL key
: 获取所有的 key/value 对。HMGET key field [field ...]
: 获取多个 field 对应的 value。
-
其他操作
HDEL key field [field ...]
: 删除指定的 field。HEXISTS key field
: 判断 field 是否存在。HKEYS key
: 获取所有的 key。HVALS key
: 获取所有的 value。HINCRBY key field increment
: 为指定 field 的 value 执行加法操作。HINCRBYFLOAT key field increment
: 为指定 field 的 value 执行浮点数加法操作。
1.本站内容仅供参考,不作为任何法律依据。用户在使用本站内容时,应自行判断其真实性、准确性和完整性,并承担相应风险。
2.本站部分内容来源于互联网,仅用于交流学习研究知识,若侵犯了您的合法权益,请及时邮件或站内私信与本站联系,我们将尽快予以处理。
3.本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
4.根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
5.本站是非经营性个人站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途
暂无评论内容