Redis常用命令
2021-04-17 14:32:22 11 举报
AI智能生成
Redis是一个开源的,基于内存的数据结构存储系统,可以用作数据库、缓存和消息中间件。以下是一些常用的Redis命令: 1. SET:设置键值对。 2. GET:获取指定键的值。 3. DEL:删除一个或多个键。 4. KEYS:查找所有符合给定模式 pattern 的键。 5. EXISTS:检查给定的键是否存在。 6. INCR:将键中储存的数字值增一。 7. DECR:将键中储存的数字值减一。 8. RENAME:修改当前数据库的键名。 9. MOUSBYTES:将二进制位图数组编码成字符串,并返回其长度。 10. APPEND:将指定的值追加到键名对应的字符串值上。
作者其他创作
大纲/内容
集合Set
增
SADD key member [member …] 将一个或多个 member 元素加入到集合 key 当中,已经存在于集合的 member 元素将被忽略
删
SPOP key 移除并返回集合中的一个随机元素。
SREM key member [member …] 移除集合 key 中的一个或多个 member 元素,不存在的 member 元素会被忽略。
改
查
SISMEMBER key member 判断 member 元素是否集合 key 的成员。
SRANDMEMBER key [count] 如果命令执行时,只提供了 key 参数,那么返回集合中的一个随机元素。
SCARD key 返回集合 key 的基数(集合中元素的数量)。
SMEMBERS key 返回集合 key 中的所有成员。
集合交集查询
SINTER key [key …] 返回一个集合的全部成员,该集合是所有给定集合的交集。
SINTERSTORE destination key [key …] 将结果保存到 destination 集合,而不是简单地返回结果集。
集合并集查询
SUNION key [key …] 返回一个集合的全部成员,该集合是所有给定集合的并集。
SUNIONSTORE destination key [key …] 将结果保存到 destination 集合,而不是简单地返回结果集。
集合差集查询
SDIFF key [key …] 返回一个集合的全部成员,该集合是所有给定集合之间的差集。
SDIFFSTORE destination key [key …] 将结果保存到 destination 集合,而不是简单地返回结果集。
移动
SMOVE source destination member 将 member 元素从 source 集合移动到 destination 集合。
有序集合ZSet
增
ZADD key score member [[score member] [score member] …] 将一个或多个 member 元素及其 score 值加入到有序集 key 当中。
删
ZREM key member [member …] 移除有序集 key 中的一个或多个成员,不存在的成员将被忽略。
区间删除
根据下标删除
ZREMRANGEBYRANK key start stop 移除有序集 key 中,指定排名(rank)区间内的所有成员。
根据score删除
ZREMRANGEBYSCORE key min max 移除有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。
改
更改score值
ZINCRBY key increment member 为有序集 key 的成员 member 的 score 值加上增量 increment 。
查
查询总量
ZCARD key 返回有序集 key 的基数。
查询score值
ZSCORE key member 返回有序集 key 中,成员 member 的 score 值。
区间查询
根据下标查询
ZRANGE key start stop [WITHSCORES] 返回有序集 key 中,指定区间内的成员。
ZREVRANGE key start stop [WITHSCORES] 返回有序集 key 中,指定区间内的成员。
根据score查询
ZCOUNT key min max 返回有序集 key 中, score 值在 min 和 max 之间(默认包括 score 值等于 min 或 max )的成员的数量。
ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
ZREVRANGEBYSCORE key max min [WITHSCORES] [LIMIT offset count]
根据字符查询
排名查询
ZRANK key member 返回有序集 key 中成员 member 的排名。其中有序集成员按 score 值递增(从小到大)顺序排列。
ZREVRANK key member 返回有序集 key 中成员 member 的排名。其中有序集成员按 score 值递减(从大到小)排序。
移动
并集操作
ZUNIONSTORE destination numkeys key [key …] [WEIGHTS weight [weight …]] [AGGREGATE SUM|MIN|MAX]
交集操作
ZINTERSTORE destination numkeys key [key …] [WEIGHTS weight [weight …]] [AGGREGATE SUM|MIN|MAX]
设置过期时间
设置过期时间
倒计时
EXPIRE key seconds 为给定 key 设置生存时间,当 key 过期时(生存时间为 0 ),它会被自动删除。
PEXPIRE key milliseconds 这个命令和 EXPIRE 命令的作用类似,但是它以毫秒为单位设置 key 的生存时间,而不像 EXPIRE 命令那样,以秒为单位。
指定时间
EXPIREAT key timestamp EXPIREAT 的作用和 EXPIRE 类似,都用于为 key 设置生存时间
PEXPIREAT key milliseconds-timestamp 这个命令和 expireat 命令类似,但它以毫秒为单位设置 key 的过期 unix 时间戳,而不是像 expireat 那样,以秒为单位。
查询过期时间
TTL key 以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。
PTTL key 这个命令类似于 TTL 命令,但它以毫秒为单位返回 key 的剩余生存时间,而不是像 TTL 命令那样,以秒为单位。
移除过期时间
PERSIST key 移除给定 key 的生存时间,将这个 key 从“易失的”(带生存时间 key )转换成“持久的”(一个不带生存时间、永不过期的 key )。
字符串String
增
SET key value [EX seconds] [PX milliseconds] [NX|XX]
(批量操作) MSET key value [key value …] 同时为多个键设置值。
(批量操作) MSETNX key value [key value …] 当且仅当所有给定键都不存在时, 为所有给定键设置值。
删
DEL key 删除一个key
(批量操作)DEL key [key ...] 删除一个或多个key
改
SETRANGE key offset value 偏移量设置值
APPEND key value 追加字符串
查
GET key 获取字符串
GETSET key value 将键 key 的值设为 value , 并返回键 key 在被设置之前的旧值。
STRLEN key 返回键 key 储存的字符串值的长度。
GETRANGE key start end 偏移量获取值
(批量操作)MGET key [key …] 返回给定的一个或多个字符串键的值。
EXISTS key 判断key是否存在
数值操作
加
INCR key 为键 key 储存的数字值加上一。
INCRBY key increment 为键 key 储存的数字值加上增量 increment
INCRBYFLOAT key increment 为键 key 储存的值加上浮点数增量 increment
减
DECR key 为键 key 储存的数字值减去一
DECRBY key decrement 将键 key 储存的整数值减去减量 decrement
哈希表Hash
增
HSET hash field value 将哈希表 hash 中域 field 的值设置为 value 。
HSETNX hash field value 当且仅当域 field 尚未存在于哈希表的情况下, 将它的值设置为 value
(批量操作)HMSET key field value [field value …] 同时将多个 field-value (域-值)对设置到哈希表 key 中。
删
HDEL key field [field …] 删除哈希表 key 中的一个或多个指定域,不存在的域将被忽略。
改
增的方法会覆盖原来的值,达到改的目的
查
HGET hash field 返回哈希表中给定域的值。
(批量操作)HMGET key field [field …] 返回哈希表 key 中,一个或多个给定域的值
HEXISTS hash field 检查给定域 field 是否存在于哈希表 hash 当中。
HLEN key 返回哈希表 key 中域的数量
HSTRLEN key field 返回哈希表 key 中, 与给定域 field 相关联的值的字符串长度
HKEYS key 返回哈希表 key 中的所有域。
HVALS key 返回哈希表 key 中所有域的值。
HGETALL key 返回哈希表 key 中,所有的域和值。
数值操作
加
HINCRBY key field increment 为哈希表 key 中的域 field 的值加上增量 increment
HINCRBYFLOAT key field increment 为哈希表 key 中的域 field 加上浮点数增量 increment
减
上面加的方法的increment值可以为负数,达到减的目的
列表List
增
添加到表头
LPUSH key value [value …] 将一个或多个值 value 插入到列表 key 的表头
LPUSHX key value 将值 value 插入到列表 key 的表头,当且仅当 key 存在并且是一个列表。
添加到表尾
RPUSH key value [value …] 将一个或多个值 value 插入到列表 key 的表尾(最右边)。
RPUSHX key value 将值 value 插入到列表 key 的表尾,当且仅当 key 存在并且是一个列表
添加到给定键的之前或之后
LINSERT key BEFORE|AFTER pivot value 将值 value 插入到列表 key 当中,位于值 pivot 之前或之后。
删
删除表头
LPOP key 移除并返回列表 key 的头元素
删除表尾
RPOP key 移除并返回列表 key 的尾元素
删除给定的值
LREM key count value 根据参数 count 的值,移除列表中与参数 value 相等的元素。
删除给定区间外的值
LTRIM key start stop 让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。
改
LSET key index value 将列表 key 下标为 index 的元素的值设置为 value 。
查
查询列表长度
LLEN key 返回列表 key 的长度。
查询指定下标的值
LINDEX key index 返回列表 key 中,下标为 index 的元素
查询给定区间的值
LRANGE key start stop 返回列表 key 中指定区间内的元素,区间以偏移量 start 和 stop 指定。
移动
RPOPLPUSH source destination
阻塞操作
BLPOP key [key …] timeout LPOP的阻塞版
BRPOP key [key …] timeout RPOP的阻塞版
BRPOPLPUSH source destination timeout RPOPLPUSH的阻塞版
0 条评论
下一页