TYPE:查看键的类型

TYPE 命令允许我们查看给定键的类型:

  1. TYPE key

举个例子,如果我们对一个字符串键执行 TYPE 命令,那么命令将告知我们,这个键是一个字符串键:

  1. redis> GET msg
  2. "hello world"
  3.  
  4. redis> TYPE msg
  5. string

又比如说,如果我们对一个集合键执行 TYPE 命令,那么命令将告知我们,这个键是一个集合键:

  1. redis> SMEMBERS fruits
  2. 1) "banana"
  3. 2) "cherry"
  4. 3) "apple"
  5.  
  6. redis> TYPE fruits
  7. set

表 11-4 列出了 TYPE 命令在面对不同类型的键时返回的各项结果。


表 11-4 TYPE 命令在面对不同类型的键时返回的各项结果

键类型TYPE 命令的返回值
字符串键string
散列键hash
列表键list
集合键set
有序集合键zset
HyperLogLogstring
位图string
地理位置zset
stream

在这个表格里面,TYPE 命令对于字符串键、散列键、列表键、集合键和流键的返回结果都非常直观,不过它对于之后几种类型的键的返回结果则需要做进一步解释:

  • 因为所有有序集合命令 ——比如 ZADDZREMZSCORE 等等 ——都是以 z 为前缀命名的,所以有序集合也被称为 zset 。因此 TYPE 命令在接收到有序集合键作为输入时,将返回 zset 作为结果。

  • 因为 HyperLogLog 和位图这两种键在底层都是通过字符串键来实现的,所以 TYPE 命令对于这两种键将返回 string 作为结果。

  • 跟 HyperLogLog 和位图的情况类似,因为地理位置键使用了有序集合键作为底层实现,所以 TYPE 命令对于地理位置键将返回 zset 作为结果。

其他信息

属性
复杂度O(1)
版本要求TYPE 命令从 Redis 1.0.0 版本开始可用。