InfluxQL 子查询
InfluxQL 子查询是在 InfluxQL 查询的 FROM
子句中嵌套的查询。外层查询查询内层查询(子查询)返回的结果。
InfluxQL 不支持 HAVING
子句,然而 InfluxQL 子查询提供了类似于 SQL HAVING
子句 的功能。
语法
SELECT_clause FROM ( SELECT_statement ) [...]
使用子查询时,InfluxQL 首先执行 内层查询,然后执行外层查询。
外层查询需要一个 SELECT
子句 和一个 FROM
子句。内层查询在外层查询的 FROM
子句中以括号的形式出现。
InfluxQL 支持多重嵌套子查询
SELECT_clause FROM ( SELECT_clause FROM ( SELECT_statement ) [...] ) [...]
示例
显著的子查询行为
将时间范围应用于外部查询以提高性能
为了提高使用子查询和指定时间范围的 InfluxQL 查询的性能,将基于时间的谓词 WHERE
子句应用于外部查询而不是内部查询。例如——以下查询返回相同的结果,但在外部查询上使用基于时间的谓词的查询比在内部查询上使用基于时间的谓词的查询性能更好
子查询中不能使用多个 SELECT 语句
InfluxQL 不支持每个子查询多个 SELECT
语句
SELECT_clause FROM (SELECT_statement; SELECT_statement) [...]
然而,InfluxQL 支持每个外部查询多个嵌套子查询
SELECT_clause FROM ( SELECT_clause FROM ( SELECT_statement ) [...] ) [...]
------------------ ----------------
Subquery 1 Subquery 2
这个页面有帮助吗?
感谢您的反馈!