serverless: ga
stack: ga
The WHERE processing command produces a table that contains all the rows from
the input table for which the provided condition evaluates to true.
::::{tip}
In case of value exclusions, fields with null values will be excluded from search results.
In this context a null means either there is an explicit null value in the document or
there is no value at all. For example: WHERE field != "value" will be interpreted as
WHERE field != "value" AND field IS NOT NULL.
::::
Syntax
WHERE expression
Parameters
expression
: A boolean expression.
Examples
:::{include} ../examples/docs.csv-spec/where.md
:::
Which, if still_hired is a boolean field, can be simplified to:
:::{include} ../examples/docs.csv-spec/whereBoolean.md ::: Use date math to retrieve data from a specific time range. For example, to retrieve the last hour of logs:
:::{include} ../examples/date.csv-spec/docsNowWhere.md
:::
WHERE supports various functions.
For example the LENGTH function:
:::{include} ../examples/docs.csv-spec/whereFunction.md :::
For a complete list of all functions, refer to Functions overview.
For NULL comparison, use the IS NULL and IS NOT NULL predicates.
:::{include} ../../operators/examples/is_null.md :::
:::{include} ../../operators/examples/is_not_null.md :::
For matching text, you can use full text search functions like MATCH.
Use MATCH to perform a
match query on a specified field.
Match can be used on text fields, as well as other field types like boolean, dates, and numeric types.
:::{include} ../../functions/examples/match.md :::
::::{tip}
You can also use the shorthand match operator : instead of MATCH.
::::
Use LIKE to filter data based on string patterns using wildcards. LIKE usually acts on a field placed on the left-hand side of the operator, but it can also act on a constant (literal) expression. The right-hand side of the operator represents the pattern.
The following wildcard characters are supported:
* matches zero or more characters.? matches one character.:::{include} ../../operators/types/like.md :::
:::{include} ../../operators/examples/like.md :::
:::{include} ../../operators/detailedDescription/like.md :::
Use RLIKE to filter data based on string patterns using using regular expressions. RLIKE usually acts on a field placed on the left-hand side of the operator, but it can also act on a constant (literal) expression. The right-hand side of the operator represents the pattern.
:::{include} ../../operators/types/rlike.md :::
:::{include} ../../operators/examples/rlike.md :::
:::{include} ../../operators/detailedDescription/rlike.md :::
The IN operator allows testing whether a field or expression equals an element
in a list of literals, fields or expressions:
:::{include} ../../operators/examples/in.md :::
For a complete list of all operators, refer to Operators.