命令查询传送门
Redis远程字典服务器(4)—— string类型详解
命令 | 执行效果 | 时间复杂度 |
---|---|---|
set key value [key value...] | 设置 key 的值是 value | O(k), k 是键个数 |
get key | 获取 key 的值 | O(1) |
del key [key ...] | 删除指定的 key | O(k), k 是键个数 |
mset key value [key value ...] | 批量设置指定的 key 和 value | O(k), k 是键个数 |
mget key [key ...] | 批量获取 key 的值 | O(k), k 是键个数 |
incr key | 指定的 key 的值 +1 | O(1) |
decr key | 指定的 key 的值 -1 | O(1) |
incrby key n | 指定的 key 的值 +n | O(1) |
decrby key n | 指定的 key 的值 -n | O(1) |
incrbyfloat key n | 指定的 key 的值 +n | O(1) |
append key value | 指定的 key 的值追加 value | O(1) |
strlen key | 获取指定 key 的值的⻓度 | O(1) |
setrange key offset value | 覆盖指定 key 的从 offset 开始的部分值 | O(n),n 是字符 串⻓度, 通常视 为 O(1) |
getrange key start end | 获取指定 key 的从 start 到 end 的部分值 | O(n),n 是字符 串⻓度, 通常视 为 O(1) |
Redis远程字典服务器(5) —— hash类型详解
命令 | 执行效果 | 时间复杂度 |
---|---|---|
hset key field value | 设置值 | O(1) |
hget key field | 获取值 | O(1) |
hdel key field [field ...] | 删除 field | O(k), k 是 field 个数 |
hlen key | 计算 field 个数 | O(1) |
hgetall key | 获取所有的 field-value | O(k), k 是 field 个数 |
hmget field [field ...] | 批量获取 field-value | O(k), k 是 field 个数 |
hmset field value [field value ...] | 批量获取 field-value | O(k), k 是 field 个数 |
hexists key field | 判断 field 是否存在 | O(1) |
hkeys key | 获取所有的 field | O(k), k 是 field 个数 |
hvals key | 获取所有的 value | O(k), k 是 field 个数 |
hsetnx key field value | 设置值,但必须在 field 不存在时才能设置成功 | O(1) |
hincrby key field n | 对应 field-value +n | O(1) |
hincrbyfloat key field n | 对应 field-value +n | O(1) |
hstrlen key field | 计算 value 的字符串⻓度 | O(1) |
Redis远程字典服务器(6) —— list类型详解-CSDN博客
操作类型 | 命令 | 时间复杂度 |
---|---|---|
添加 | rpush key value [value ...] | O(k),k 是元素个数 |
lpush key value [value ...] | ||
linsert key before | after pivot value | O(n),n 是 pivot 距离头尾的距离 | |
查找 | lrange key start end | O(s+n),s 是 start 偏移量,n 是 start 到 end 的范围 |
lindex key index | O(n),n 是索引的偏移量 | |
llen key | O(1) | |
删除 | lpop key | O(1) |
rpop key | ||
lremkey count value | O(k),k 是元素个数 | |
ltrim key start end | ||
修改 | set key index value | O(n),n 是索引的偏移量 |
阻塞操作 | blpop brpop | O(1) |
Redis远程字典服务器(7)—— set类型详解
命令 | 执行效果 | 时间复杂度 |
---|---|---|
sadd key element [element ...] | 添加 | O(k),k 是元素个数 |
srem key element [element ...] | 删除 | O(k),k 是元素个数 |
scard key | 返回set元素总数 | O(1) |
sismember key element | 判断一个元素是否在set中 | O(1) |
srandmember key [count] | 随机读取一个数 | O(n),n 是 count |
spop key [count] | 随机删除一个或多个数 | O(n),n 是 count |
smembers key | 获取set中的所有元素 | O(k),k 是元素个数 |
sinter key [key ...] sitnerstore | 求交集 | O(m * k),k 是⼏个集合中元素最⼩的个数,m 是键个数 |
sunion key [key ...] sunionstore | 求并集 | O(k),k 是多个集合的元素个数总和 |
sdiff key [key ...] sdiffstore | 求差集 | O(k),k 是多个集合的元素个数总和 |
Redis远程字典服务器(8)—— zset类型详解-CSDN博客
命令 | 执行效果 | 时间复杂度 |
---|---|---|
zadd key score member [score member ...] | 往集合中添加或修改元素和分数 | O(k * log(n)),k 是添加成员的个数,n 是当前有序集合的元 素个数 |
zcard key | 获取集合中的元素个数 | O(1) |
zscore key member | 查询指定member的分数 | O(1) |
zrank key member zrevrank key membe | 顺序或逆序获取member的排名 | O(log(n)),n 是当前有序集合的元素个数 |
zrem key member [member ...] | 删除指定的member | O(k * log(n)),k 是删除成员的个数,n 是当前有序集合的元 素个数 |
zincrby key increment member | 对指定member的score进行加法运算 | O(log(n)),n 是当前有序集合的元素个数 |
zrange key start end [withscores] zrevrange key start end [withscores] | 顺序或逆序查看指定的一对下标构成的区间的值 | O(k + log(n)),k 是获取成员的个数,n 是当前有序集合的元 素个数 |
zrangebyscore key min max [withscores] zrevrangebyscore key max min [withscores] | 按照分数顺序或逆序查看指定的一对下标构成的区间的值 | O(k + log(n)),k 是获取成员的个数,n 是当前有序集合的元 素个数 |
zcount | 找出score符合区间[min, max]的member的个数 | O(log(n)),n 是当前有序集合的元素个数 |
zremrangebyrank key start end | 下标范围删除 | O(k + log(n)),k 是获取成员的个数,n 是当前有序集合的元 素个数 |
zremrangebyscore key min max | 分数范围删除 | O(k + log(n)),k 是获取成员的个数,n 是当前有序集合的元 素个数 |
zinterstore destination numkeys key [key ...] | 求交集 | O(n * k) + O(m * log(m)),n 是输⼊的集合最⼩的元素个数, k 是集合个数, m 是⽬标集合元素个数 |
zunionstore destination numkeys key [key ...] | 求并集 | O(n) + O(m * log(m)),n 是输⼊集合总元素个数,m 是⽬标 集合元素个数 |