TS.QUERYINDEX

Syntax
TS.QUERYINDEX filterExpr...
Available in:
Redis Stack / TimeSeries 1.0.0
Time complexity:
O(n) where n is the number of time-series that match the filters

获取所有与过滤列表匹配的时间序列键

示例

必需的参数

filterExpr...

根据标签和标签值过滤时间序列。每个过滤表达式具有以下语法之一:

  • label!= - 时间序列有一个名为 label 的标签
  • label=value - 时间序列有一个名为 label 的标签,其值等于 value
  • label=(value1,value2,...) - 时间序列有一个名为 label 的标签,其值等于列表中的某个值
  • label= - 时间序列没有名为 label 的标签
  • label!=value - 时间序列没有名为 label 且值等于 value 的标签
  • label!=(value1,value2,...) - 时间序列没有名为 label 的标签,其值等于列表中的任何值

注释:

  • 至少需要一个带有语法 label=valuelabel=(value1,value2,...) 的过滤表达式。
  • 过滤表达式是合取的。例如,过滤器 type=temperature room=study 意味着时间序列是书房温度时间序列。
  • 在过滤表达式中,除了值中的引号或双引号之间的空白字符外,不允许有空白字符 - 例如,x="y y"x='(y y,z z)'

注意: 在Redis集群上运行时,QUERYINDEX命令不能作为事务的一部分。

返回值

返回以下回复之一:

  • Array reply 其中每个元素是一个 Bulk string reply:一个时间序列键。如果没有时间序列匹配过滤器,数组为空。
  • [] (例如,在无效的过滤器表达式上)

示例

Find keys by location and sensor type

创建一组传感器来测量您书房和厨房的温度和湿度。

127.0.0.1:6379> TS.CREATE telemetry:study:temperature LABELS room study type temperature
OK
127.0.0.1:6379> TS.CREATE telemetry:study:humidity LABELS room study type humidity
OK
127.0.0.1:6379> TS.CREATE telemetry:kitchen:temperature LABELS room kitchen type temperature
OK
127.0.0.1:6379> TS.CREATE telemetry:kitchen:humidity LABELS room kitchen type humidity
OK

检索代表位于厨房的传感器的所有时间序列的键。

127.0.0.1:6379> TS.QUERYINDEX room=kitchen
1) "telemetry:kitchen:humidity"
2) "telemetry:kitchen:temperature"

要检索表示测量温度的传感器的所有时间序列的键,请使用此查询:

127.0.0.1:6379> TS.QUERYINDEX type=temperature
1) "telemetry:kitchen:temperature"
2) "telemetry:study:temperature"

另请参阅

TS.CREATE | TS.MRANGE | TS.MREVRANGE | TS.MGET

RedisTimeSeries


RATE THIS PAGE
Back to top ↑