Redis常用命令

Redis键(key)

1.keys
查找并返回所有符合给定模式 pattern 的 key
命令格式: KEYS pattern
pattern通配符:

  • ?:任一字符;*:任意多个字符
  • [ae]:匹配a或e;[^e]:匹配非e
  • [a-b]:匹配a-b之间(含)的字符
  • \ :字符转义
127.0.0.1:6379> keys k?
1) "k2"
2) "k1"
3) "k3"

2. EXISTS
判断指定key是否存在。
命令格式:EXISTS key

  • key存在返回1,不存在返回0;
  • 参数key有多个时,返回存在key的数量;
127.0.0.1:6379> EXISTS k1
(integer) 1
127.0.0.1:6379> EXISTS k1 k2 k3
(integer) 3
127.0.0.1:6379> EXISTS k1 k2 k3 k4
(integer) 3

2. MOVE
移动key到指定DB
命令格式:MOVE key db

  • 移动成功返回1,移动失败返回0;
  • 当前DB不存在该key --> 不移动;
  • 目标DB已有该key --> 不移动;
    在这里插入图片描述
    key过期命令
  • 设置过期时间为一段时间后(EXPIRE、PEXPIRE);
    EXPIRE:设置key的过期时间
    PEXPIRE:设置key的过期时间(毫秒)
  • 设置过期时间为指定时间点(EXPIREAT、PEXPIREAT);
    EXPIREAT:设置key的过期时间为Unix时间戳(since 1970-01-01)
    PEXPIREAT:设置key的过期时间为Unix毫秒时间戳(since 1970-01-01)
  • 查询过期时间(TTL、PTTL);
    TTL: 查询指定key的剩余生存时间
    PTTL:查询指定key的剩余生存时间(毫秒)

Key过期命令注意

  • 过期时间支持设置一段时间后过期,也支持设置指定时间点过期;
  • 过期时间和电脑时钟相关,如果修改时钟为未来的时间,则key会立即过期;
  • key被rename后,新key过期时间沿用旧key的过期时间;
  • 以上6个命令时间复杂度都是O(1);
  • key不存在(已过期)返回 -2;
    存在且未设置过期时间(永不过期)返回 -1;
Redis字符串类型常用操作命令(String)

字符串类型是Redis中最基本的数据类型,他能存储任意形式的字符串,包括二进制数据。字符串类型也是其他四种数据类型的基础。也就是说,其他四种数据类型都是由字符串类型所组成的。

1. set key
赋值,若key存在,则会覆盖原来的值,返回OK
在这里插入图片描述
2. get key
取值,返回值是对应键的值,没有返回 < nil >即为空
在这里插入图片描述
3. del key
删除键值,若key存在,返回1,不存在返回0
在这里插入图片描述

4. incr key
递增数字,虽然是字符串类型,但如果可以是整型的话,也是可以使用此命令递增的,返回值是递增后的值,递增操作后,再次获取该key值,值为新值。
在这里插入图片描述
如果值无法转换成整型,报错error
在这里插入图片描述
5. incrby key number
和 incr key 类似,只不过可以通过number指定增长的数量,返回值同样是增长后的值。
在这里插入图片描述
5. decr key与decrby key number
使用方式跟incr key、incrby key number一样,只不过decr 是减。
6. append key value
与java的StringBuffer的append作用一样,向尾部追加值,返回值为值的总长度
在这里插入图片描述
7. setex key(set with expire)
赋值,并且添加过期时间
8. setnx key(set if not exist)
赋值,只有在 key 不存在时设置 key 的值。
9. mset key value
同时设置一个或多个 key-value 键值对。原子操作,要么都成功,要么都失败
10. msetnx key value
同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在。

与java的StringBuffer的append作用一样,向尾部追加值,返回值为值的总长度
Redis 字符串命令有很多,包含了对字符串的基本操作,更多命令参考:https://redis.io/commands

Redis列表类型常用操作命令(List)

1. LPUSH key value1 [value2]
从列表头部向集合中插入一个或多个元素。返回该列表添加完后的元素个数。
2. LPUSHX key value
一个元素插入到已存在的列表头部。如果不存在列表,返回0。
在这里插入图片描述
3. RPUSH key value1 [value2]
在尾部向列表中添加一个或多个值
4. RPUSHX key value
在尾部向已存在的列表添加值
在这里插入图片描述
5. LRANGE key start stop
获取列表指定范围内的元素
6. LINDEX key index
通过索引获取列表中的元素
在这里插入图片描述
7. LPOP key
移出并获取列表的第一个元素
8. RPOP key
移出并获取列表的最后一个元素
9. LSET key index value
通过索引设置列表元素的值
10. LREM key count value
从头部开始移除列表中count个值为value的元素
在这里插入图片描述

Redis集合类型常用操作命令(Set)

1. SADD key member1 [member2]
向集合添加一个或多个成员
2. SCARD key
获取集合key的成员数
3.SISMEMBER key member
判断 member 元素是否是集合 key 的成员
4. SMEMBERS key
返回集合中的所有成员
5. SPOP key
移除并返回集合中的一个随机元素
6. SRANDMEMBER key [count]
返回集合中一个或多个随机数
7. SREM key member1 [member2]
移除集合中一个或多个成员

Redis集合类型常用操作命令(Hash)

1. HSET key field value
将哈希表 key 中的字段 field 的值设为 value 。
2. HMSET key field1 value1 [field2 value2 ]
同时将多个 field-value (域-值)对设置到哈希表 key 中。
3. HGET key field
获取存储在哈希表中指定字段的值。
4. HGETALL key
获取在哈希表中指定 key 的所有字段和值
在这里插入图片描述
5. HEXISTS key field
查看哈希表 key 中,指定的字段是否存在。
6. HKEYS key
获取所有哈希表中的字段
7. HLEN key
获取哈希表中字段的数量
在这里插入图片描述

Redis有序集合类型常用操作命令(Zset)

有序集合在set的基础上,加一个score值,set是 k1 v1,zset是 k1 score1 v1

1. ZADD key score1 member1 [score2 member2]
向有序集合添加一个或多个成员,或者更新已存在成员的分数
在这里插入图片描述
2. ZCARD key
获取有序集合的成员数
在这里插入图片描述
3. ZCOUNT key min max
计算在有序集合中指定区间分数的成员数
4. ZINCRBY key increment member
有序集合中对指定成员的分数加上增量 increment
在这里插入图片描述
5. ZRANK key member
返回有序集合中指定成员的索引
6. ZREM key member [member …]
移除有序集合中的一个或多个成员
7. ZREMRANGEBYLEX key min max
移除有序集合中给定的字典区间的所有成员
8. ZREVRANK key member
返回有序集合中指定成员的排名,有序集成员按分数值递减(从大到小)排序
9. ZSCORE key member
返回有序集中,成员的分数值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值