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此页面是否有帮助?
感谢您的反馈!
支持和反馈
感谢您成为我们社区的一员!我们欢迎并鼓励您对 InfluxDB 3 Core 和本文档提供反馈和错误报告。要获得支持,请使用以下资源
具有年度合同或支持合同的客户可以 联系 InfluxData 支持。