左连接 influxDB

Posted

技术标签:

【中文标题】左连接 influxDB【英文标题】:Left join in influx DB 【发布时间】:2014-12-10 04:35:24 【问题描述】:

我是涌入数据库的新手。现在我需要将 mysql db 迁移到 influxDB 中。我选择了 influx DB,因为它支持类似 SQL 的查询。但我找不到左加入它。我有一个名为统计的系列,其中包含 browser_id,另一个系列包含浏览器列表。我怎样才能像关系数据库概念一样加入这两个表? 我写了这个查询,但它没有给出任何结果。

select * from statistics as s inner join browsers as b where s.browser_type_id  = b.id

统计数据

浏览器

【问题讨论】:

正如@gbrian 所提到的,现在看来这是可能的。考虑接受他的回答 【参考方案1】:

您不能使用任意列在 InfluxDB 中加入系列。 InfluxDB 仅支持基于时间列加入时间序列。这是一种特殊类型的连接,与您在关系数据库中习惯的连接不同。 InfluxDB 中的时间连接尝试关联来自几乎同时发生的不同时间序列的点。您可以在 InfluxDB in the docs 中阅读有关连接的更多信息

【讨论】:

我检查了文档。但是没有太多关于它的文档。你能用样本数据解释一下吗?示例,例如带有示例数据的两个系列。 在实际版本中,如果省略标记,则此连接(或合并)是自动的。但请记住,只有在相同的测量范围内才有可能 (docs.influxdata.com/influxdb/v1.6/query_language/…)【参考方案2】:

似乎现在是可能的。再次查看文档:https://docs.influxdata.com/influxdb/v0.8/api/query_language/#joining-series

select hosta.value + hostb.value
from cpu_load as hosta
inner join cpu_load as hostb
where hosta.host = 'hosta.influxdb.orb' and hostb.host = 'hostb.influxdb.org';

【讨论】:

我认为这正是@sajith 所说的 join 类型。绝对不是传统的关系连接 有人知道 1.6 版的 influxdb 文档中的连接描述在哪里吗?

以上是关于左连接 influxDB的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 的内连接、左连接、右连接有啥区别?

SQL中的左连接与右连接,内连接有啥区别

为啥我什至没有使用左连接时会收到左外连接错误消息?

多个左连接 - 啥是“左”表?

左连接,有连接

MySQL连接查询之内连接左连接右连接自连接