keep() function

The keep() function returns a table containing only the specified columns, ignoring all others. Only columns in the group key that are also specified in the keep() function will be kept in the resulting group key. It is the inverse of drop.

*Function type: Transformation
**
Output data type:* Record

  1. keep(columns: ["col1", "col2"])
  2. // OR
  3. keep(fn: (column) => column =~ /inodes*/)

Parameters

Make sure fn parameter names match each specified parameter. To learn why, see Match parameter names.

columns

Columns that should be included in the resulting table. Cannot be used with fn.

*Data type: Array of strings*

fn

A predicate function which takes a column name as a parameter (column) and returns a boolean indicating whether or not the column should be included in the resulting table. Cannot be used with columns.

*Data type: Function*

Examples

Keep a list of columns
  1. from(bucket: "example-bucket")
  2. |> range(start: -5m)
  3. |> keep(columns: ["_time", "_value"])
Keep all columns matching a predicate
  1. from(bucket: "example-bucket")
  2. |> range(start: -5m)
  3. |> keep(fn: (column) => column =~ /inodes*/)