1 Redis的基本数据结构
注:Redis
为了方便我们学习,将操作不同数据类型的命令也做了分组,在官网( https://redis.io/commands
)可以查看到不同的命令。
2 Redis的通用命令
通用指令是部分数据类型的,都可以使用的指令。
KEYS
:查看符合模板的所有key
,不建议在生产环境设备上使用。
DEL
:删除一个指定的key
。
EXISTS
:判断key
是否存在。
EXPIRE
:给一个key
设置有效期,有效期到期时该key
会被自动删除。
TTL
:查看一个key
的剩余有效期,永久存储时值为-1
,数据库中无此值时值为-2
。
3 String类型及其常见命令
3.1 String类型
3.2 常见命令
SET
:添加或者修改已经存在的一个String
类型的键值对。
GET
:根据key
获取String
类型的value
。
MSET
:批量添加多个String
类型的键值对。MGET
:根据多个key
获取多个String
类型的value
。
INCR
:让一个整型的key
自增1。
INCRBY
:让一个整型的key
自增并指定步长,例如:incrby num 2
让num
值自增2
。
INCRBYFLOAT
:让一个浮点类型的数字自增并指定步长。
SETNX
:添加一个String
类型的键值对,前提是这个key
不存在,否则不执行。
SETEX
:添加一个String
类型的键值对,并且指定有效期。
3.3 Redis区分不同类型的key
4 Hash类型及其常见命令
4.1 Hash类型
4.2 常见命令
HSET key field value
:添加或者修改hash
类型key
的field
的值。
HGET key field
:获取一个hash
类型key
的field
的值。
HMSET
:批量添加多个hash
类型key
的field
的值。
HMGET
:批量获取多个hash
类型key
的field
的值。
HGETALL
:获取一个hash
类型的key
中的所有的field
和value
。
HKEYS
:获取一个hash
类型的key
中的所有的field
。
HVALS
:获取一个hash
类型的key
中的所有的value
。
HINCRBY
:让一个hash
类型key
的字段值自增并指定步长。
HSETNX
:添加一个hash
类型的key
的field
值,前提是这个field
不存在,否则不执行。
5 List类型及其常见命令
5.1 List类型
5.2 常见命令
LPUSH key element ...
:向列表左侧插入一个或多个元素。
LPOP key
:移除并返回列表左侧的第一个元素,没有则返回nil
。
RPUSH key element ...
:向列表右侧插入一个或多个元素。
RPOP key
:移除并返回列表右侧的第一个元素。
LRANGE key star end
:返回一段角标范围内的所有元素。
BLPOP和BRPOP
:与LPOP
和RPOP
类似,只不过在没有元素时等待指定时间,而不是直接返回nil
,还需开一个后台界面。
6 Set类型及其常见命令
6.1 Set类型
6.2 常见命令
SADD key member ...
:向set
中添加一个或多个元素。
SREM key member ...
: 移除set
中的指定元素。
SCARD key
: 返回set
中元素的个数。
SISMEMBER key member
:判断一个元素是否存在于set
中。
SMEMBERS
:获取set
中的所有元素。
SINTER key1 key2 ...
:求key1
与key2
的交集。
SDIFF key1 key2 ...
:求key1
与key2
的差集。
SUNION key1 key2 ...
:求key1
和key2
的并集。
7 SortedSet类型及其常见命令
7.1 SortedSet类型
7.2 常见命令
-
ZADD key score member
:添加一个或多个元素到sorted set
,如果已经存在则更新其score
值。
-
ZREM key member
:删除sorted set
中的一个指定元素。
-
ZSCORE key member
: 获取sorted set
中的指定元素的score
值。
-
ZRANK key member
:获取sorted set
中的指定元素的排名。
-
ZCARD key
:获取sorted set
中的元素个数。
-
ZCOUNT key min max
:统计score
值在给定范围内的所有元素的个数。
-
ZINCRBY key increment member
:让sorted set
中的指定元素自增,步长为指定的increment
值。
-
ZRANGE key min max
:按照score
排序后,获取指定排名范围内的元素。
-
ZRANGEBYSCORE key min max
:按照score
排序后,获取指定score
范围内的元素。 -
ZDIFF、ZINTER、ZUNION
:求差集、交集、并集。