docs-v2/content/flux/v0/stdlib/universe/count.md

3.1 KiB

title description menu weight flux/v0/tags introduced
count() function `count()` returns the number of records in each input table.
flux_v0_ref
name parent identifier
count universe universe/count
101
transformations
aggregates
0.7.0

count() returns the number of records in each input table.

The function counts both null and non-null records.

Empty tables

count() returns 0 for empty tables. To keep empty tables in your data, set the following parameters for the following functions:

Function Parameter
filter() onEmpty: "keep"
window() createEmpty: true
aggregateWindow() createEmpty: true
Function type signature
(<-tables: stream[A], ?column: string) => stream[B] where A: Record, B: Record

{{% caption %}} For more information, see Function type signatures. {{% /caption %}}

Parameters

column

Column to count values in and store the total count.

tables

Input data. Default is piped-forward data (<-).

Examples

Count the number of records in each input table

import "sampledata"

sampledata.string()
    |> count()

Count the number of records with a specific value

  1. Use filter() to filter data by the specific value you want to count.
  2. Use count() to count the number of rows in the table.
import "sampledata"

data =
    sampledata.int()
        |> filter(fn: (r) => r._value > 10)

data
    |> count()

{{< expand-wrapper >}} {{% expand "View example input and output" %}}

Input data

_time _value *tag
2021-01-01T00:00:30Z 17 t1
2021-01-01T00:00:40Z 15 t1
_time _value *tag
2021-01-01T00:00:00Z 19 t2
2021-01-01T00:00:30Z 19 t2
2021-01-01T00:00:40Z 13 t2

Output data

*tag _value
t1 2
*tag _value
t2 3

{{% /expand %}} {{< /expand-wrapper >}}