如何在InfluxDB中使用Distinct函数

阿玛德

我正在使用Influx DB并发出命令,

SELECT * FROM interface

下面是输出

interface 
time                              element                path                                       value
2016-08-24T21:22:16.7080877Z    "link-layer-address0"   "key:/arp-information/link-layer-address0"  "3c:61:04:48:df:91"
2016-08-24T21:22:17.9090527Z    "link-layer-address0"   "key:/arp-information/link-layer-address0"  "3c:61:04:48:df:92"
2016-08-24T21:22:19.8584133Z    "link-layer-address1"   "key:/arp-information/link-layer-address1"  "3c:61:04:48:df:97"
2016-08-24T21:22:20.3377847Z    "link-layer-address2"   "key:/arp-information/link-layer-address2"  "3c:61:04:48:df:90"

当发出命令时,它可以正常工作。

SELECT distinct(value) FROM interface 

但是,当发出用于路径列的命令时,没有输出。想知道我缺少什么?

SELECT distinct(path) FROM interface 
杰森

感谢您提供更多信息@Ammad。

简短答案

尝试GROUP BY使用标签。DISTINCT()仅适用于字段。

长答案

distinct()适用于字段,而不适用于标签。看这里:

https://docs.influxdata.com/influxdb/v1.0/query_language/functions/#distinct

DISTINCT()返回单个字段的唯一值。

字段值应为您感兴趣的实际数据。标记值是元数据:有关该数据的数据。数据库系统中的大多数功能都对数据或元数据起作用,但很少对两者起作用。

这是v0.13上的一个玩具示例,显示了它distinct()实际上不适用于标签:

insert foo,tag1=asdf field1="some text"
insert foo,tag1=asdf field1="some text"
insert foo,tag1=asdfg field1="some text"
insert foo,tag1=asdfg field1="some text"
insert foo,tag1=asdfg field1="some more text"
insert foo,tag1=asdfg field1="some more text"

现在一些查询:

select * from foo

name: foo
time                            field1          tag1
2016-09-12T05:19:53.563221799Z  some text       asdf
2016-09-12T05:20:03.027652248Z  some text       asdf
2016-09-12T05:20:10.04939971Z   some text       asdfg
2016-09-12T05:20:11.235525548Z  some text       asdfg
2016-09-12T05:20:17.418920163Z  some more text  asdfg
2016-09-12T05:20:19.354742922Z  some more text  asdfg

现在让我们尝试 distinct()

select distinct(tag1) from foo

结果根本没有输出。

select distinct(field1) from foo

name: foo
time                    distinct
1970-01-01T00:00:00Z    some text
1970-01-01T00:00:00Z    some more text

通过使用,您也许可以得到想要的东西GROUP BY像这样:

select distinct(field1) from foo group by tag1

这使:

name: foo
tags: tag1=asdf
time                    distinct
1970-01-01T00:00:00Z    some text

name: foo
tags: tag1=asdfg
time                    distinct
1970-01-01T00:00:00Z    some text
1970-01-01T00:00:00Z    some more text

这显示的每个值tag1,以及与该值field1关联的tag1值。

希望能有所帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在分组查询中使用distinct?

来自分类Dev

如何在MS Access中使用DISTINCT?

来自分类Dev

如何在SQL中使用groupby,distinct

来自分类Dev

如何在Python中使用Line Protocol写入influxdb

来自分类Dev

在R中使用distinct()函数

来自分类Dev

如何在我的查询CODEIGNITER中使用DISTINCT

来自分类Dev

如何在MySQL中使用Between子句加速count(distinct)

来自分类Dev

如何在我的查询CODEIGNITER中使用DISTINCT

来自分类Dev

如何在 CASE STATEMENT (SQL ORACLE) 中使用 Unique 或 Distinct?

来自分类Dev

如何在mysql中使用聚合函数?

来自分类Dev

如何在函数中使用* args?

来自分类Dev

如何在PHP函数中使用指针?

来自分类Dev

如何在Swift中使用map函数?

来自分类Dev

如何在函数指针中使用noreturn?

来自分类Dev

如何在Excel中使用INDIRECT函数

来自分类Dev

如何在模板函数中使用typedef?

来自分类Dev

如何在子集函数中使用索引

来自分类Dev

如何在.then中使用函数变量?

来自分类Dev

如何在匿名函数中使用变量?

来自分类Dev

如何在JavaScript中使用strtotime函数

来自分类Dev

如何在mysql函数中使用别名

来自分类Dev

如何在Clojure中使用expt函数?

来自分类Dev

如何在jQuery中使用substr()函数?

来自分类Dev

如何在gdb中使用数学函数

来自分类Dev

我如何在函数中使用getStdGen

来自分类Dev

如何在if中使用zsh函数的return?

来自分类Dev

如何在构造函数中使用@Value?

来自分类Dev

如何在函数中使用别名?

来自分类Dev

如何在R中使用Aggregate函数