Merge pull request #1293 from influxdata/flux/experimental-array

Flux Array package
pull/1297/head
Scott Anderson 2020-08-12 11:17:34 -06:00 committed by GitHub
commit 02be4504ab
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 85 additions and 0 deletions

View File

@ -0,0 +1,22 @@
---
title: Flux Array package
list_title: Array package
description: >
The Flux Array package provides functions for building tables from Flux arrays.
Import the `experimental/array` package.
menu:
v2_0_ref:
name: Array
parent: Experimental
weight: 301
v2.0/tags: [functions, array, package, table]
---
Flux Array functions provide tools for building tables from Flux arrays.
Import the `experimental/array` package:
```js
import "experimental/array"
```
{{< children type="functions" show="pages" >}}

View File

@ -0,0 +1,63 @@
---
title: array.from() function
description: >
The experimental `array.from()` function constructs a table from an array of objects.
menu:
v2_0_ref:
name: array.from
parent: Array
weight: 401
---
The experimental `array.from()` function constructs a table from an array of objects.
Each object in the array is converted into an output row or record.
All records must have the same keys and data types.
_**Function type:** Input_
{{< keep-url >}}
```js
import "experimental/array"
array.from(rows: [
{_time: 2020-01-01T00:00:00Z, _field: "exampleField", _value: 3, foo: "bar"},
{_time: 2020-01-01T00:01:00Z, _field: "exampleField", _value: 4, foo: "bar"},
{_time: 2020-01-01T00:02:00Z, _field: "exampleField", _value: 1, foo: "bar"}
])
```
## Parameters
### rows
Array of records to construct a table with.
_**Data type:** Array of objects_
## Examples
##### Build an arbitrary table
```js
import "experimental/array"
rows = [
{foo: "bar", baz: 21.2}
{foo: "bar", baz: 23.8}
]
array.from(rows: rows)
```
##### Union custom rows with query results
```js
import "influxdata/influxdb/v1"
import "experimental/array"
tags = v1.tagValues(
bucket: "example-bucket",
tag: "host"
)
wildcard_tag = array.from(rows: [{_value: "*"}])
union(tables: [tags, wildcard_tag])
```