内容来自官方文档
一、数据类型
Redis 中的主要数据类型有:
- Strings
- Lists
- Sets
- Sorted Sets
- Hashes
- Bitmaps and HyperLogLogs
二、具体介绍
1.Strings
常见用法:
- 原子计数器:
INCR, DECR, INCRBY - 使用
APPEND命令,将字符串附加到原有字符串中 -
GETRANGE命令获取 指定范围的子字符串,SETRANGE重写以offset开始的字符串内容
INCR, DECR, INCRBY 示例:
APPEND 示例:
GETRANGE, SETRANGE 示例:
2.Lists
最大长度 2^32 - 1
特性:如果某个 list 操作会清空 list,则对应的 key 会从 key space 删除。
常用命令: LPUSH key value [value ...]: 从 list 头部插入数据 RPUSH key value [value ...]: 从 list 尾部插入数据 LTRIM key start stop: 截取列表指定范围的数据。使用该命令可限制列表数据长度。
LTRIM 示例:
注:-1 表示列表的最后一个数据,-2 表示列表的倒数第二个数据
3.Sets
最大长度 2^32 - 1
常用命令:
-
SADD key member [member ...]:添加数据到 set 集合中 -
SINTER key [key ...]:获取多个 set 集合的交集 -
SPOP key [count]: 从 set 集合中移除并返回一个或多个随机数 -
SRANDMEMBER key [count]: 从 set 集合返回一个或多个随机数,但不移除,如果count参数为负数,则表示返回的多个随机数可以重复。
SRANDMEMBER 示例:
4.Sorted Sets
在 set 基础上增加一个 score 值,从小到大排序。
常用命令: ZADD: 添加数据 ZRANGE key start stop: 按索引顺序返回一定数量的数据 ZRANGEBYSCORE: 按 score 顺序返回指定区间的数据 ZRANK: 返回数据索引,从 0 开始
示例:
5.Hashes
可存储 2^32 - 1 个 key 值。
常用命令: HSET key field value: 设置指定的 hash 字段的字符串值 HGETALL key: 获取 hash 集合中所有的字段和值 HGET key field: 获取该 hash 字段的值 HMGET key field [field ...]: 获取给定的多个 hash 字段的值列表
用法示例: