EXISTS:检查给定键是否存在

用户可以通过使用 EXISTS 命令,检查给定的一个或多个键是否存在于当前正在使用的数据库里面:

  1. EXISTS key [key ...]

EXISTS 命令将返回存在的给定键数量作为返回值。

通过将多个键传递给 EXISTS 命令,我们可以判断出,在给定的键里面,有多少个键是实际存在的。举个例子,通过执行以下命令,我们可以知道 k1k2k3 这三个给定键当中,只有两个键是存在的:

  1. redis> EXISTS k1 k2 k3
  2. (integer) 2

另一方面,如果我们只想要确认某个键是否存在,那么只需要将那个键传递给 EXISTS 命令即可:命令返回 0 表示该键不存在,而返回 1 则表示该键存在。

比如说,通过执行以下命令,我们可以知道键 k3 并不存在于数据库:

  1. redis> EXISTS k3
  2. (integer) 0

只能接受单个键的 EXISTS 命令

EXISTS 命令从 Redis 3.0.3 版本开始接受多个键作为输入,在此前的版本中,EXISTS 命令只能接受单个键作为输入:

  1. EXISTS key

旧版的 EXISTS 命令在键存在时返回 1 ,不存在时返回 0

其他信息

属性
复杂度Redis 3.0.3 版本以前,只能接受单个键作为输入的 EXISTS 命令的复杂度为 O(1) ;Redis 3.0.3 及以上版本,能够接受多个键作为输入的 EXISTS 命令的复杂度为 O(N) ,其中 N 为用户给定的键数量。
版本要求EXISTS 命令从 Redis 1.0.0 版本开始可用,但只有 Redis 3.0.3 及以上版本才能接受多个键作为输入,此前的版本只能接受单个键作为输入。