【Redis专题】- 常用数据结构及命令

Redis的全局命令

keys 命令

查看所有键(支持通配符)

keys *
keys n*

在这里插入图片描述

dbsize 命令

返回当前数据库中键的总数
在这里插入图片描述

dbsize命令在计算键总数时不会遍历所有键,而是直接获取 Redis内置的键总数变量,所以dbsize命令的时间复杂度是O(1)。

exists 命令

检查键是否存在,存在返回1,不存在返回0;
在这里插入图片描述

del 命令

删除键,无论值是什么数据结构类型,del命令都可以将其删除。返回删除键个数,删除不存在键返回0。同时del命令可以支持删除多个键。
在这里插入图片描述

expire 命令

Redis支持对键添加过期时间,当超过过期时间后,会自动删除键,时间单位秒。
在这里插入图片描述

ttl 命令

返回键的剩余过期时间,它有3种返回值:

  • >=0 的整数:键剩余的过期时间。
  • -1:键没设置过期时间。
  • -2:键不存在。
    在这里插入图片描述

expireat 命令

键在秒级时间截timestamp后过期;
在这里插入图片描述

pexpire 命令

键在milliseconds毫秒后过期。

pexpireat命令

键在毫秒级时间戳timestamp后过期。

type 命令

返回键的数据结构类型;
在这里插入图片描述

randomkey 命令

随机返回一个键;
在这里插入图片描述

rename 命令

键重命名
在这里插入图片描述

如果在rename之前,新键已经存在,那么它的值也将被覆盖。
为了防止被强行rename,Redis提供了renamenx命令,确保只有newKey不存在时候才被覆盖。

Redis常用数据结构

  • 字符串(String)
  • 哈希(Hash)
  • 列表(List)
  • 集合(Set)
  • 有序集合(ZSet)

字符串(String)

字符串类型是Redis最基础的数据结构。值最大不能超过512MB;

虽然Redis是C写的,C里面有字符串<本质使用char数组来实现>,但是处于种种考虑,Redis还是自己实现了字符串类型

set 设置值

set key value
set命令的几个选项:

  • ex seconds: 为键设置秒级过期时间。
  • px milliseconds: 为键设置毫秒级过期时间。
  • nx: 键必须不存在,才可以设置成功,用于添加(分布式锁常用)。
  • xx: 与nx相反,键必须存在,才可以设置成功,用于更新。
    在这里插入图片描述

如果一个字符串已经设置了过期时间,然后你调用了set 方法修改了它,它的过期时间会消失。

nx 和 xx 效果:
在这里插入图片描述
除了set选项,Redis 还提供了setex和 setnx两个命令:

setex key seconds value
setnx key value

setex和 set

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值