##### Page tree

Outdated release! Latest docs are Release 8.7: Comparison Operators

Contents:

Comparison operators enable you to compare values in the left-hand side of an expression to the values in the right-hand side of an expression.
`(left-hand side) (operator) (right-hand side)`

These evaluations result in a Boolean `true` or `false` result and can be used as the basis for determining whether the transformation is executed on the row or column of data. The following operators are supported:

Operator NameSymbolExample ExpressionOutputNotes
less than`<`

`3 < 6`

`true`
less than or equal to`<=`

`6 <= 5`

`false`The following operator generates an error: `=<`
greater than>

`3 > 6`

`false`
greater than or equal to>=

`6 >= 5`

`true`The following operator generates an error: `=>`
equal to==`4 == 4``true`For this comparison operator, you must use two equals signs, or an error is generated.
not equal to

`<>` or

!=

4 <> 4`false`

Both operators are supported.

The following operator generates an error: `=!`

The above examples apply to integer values only. Below, you can review how the comparison operators apply to different data types.

## Usage

Comparison operators are used to determine the condition of a set of data. Typically, they are applied in evaluations of values or rows.

For example, your dataset is the following:

city
San Francisco
Los Angeles
Chicago
New York

You could use the following transformation to flag all rows whose `city` value equals `San Francisco`:

Transformation Name `New formula` `Single row formula` `(city == 'San Francisco')`

Your output looks like the following:

citycolumn1
San Franciscotrue
Los Angelesfalse
Chicagofalse
New Yorkfalse

You can optionally combine the above with an `IF` function, which enables you to write values for `true` or `false` outcomes:

Transformation Name `New formula` `Single row formula` `if(city == 'San Francisco', 'Home of the Giants!', 'Some other team')` `'BaseballTeam'`

Note that the optional `as:` clause can be used to rename the generated columns. See Derive Transform.

cityBaseballTeam
San FranciscoHome of the Giants!
Los AngelesSome other team
ChicagoSome other team
New YorkSome other team

## Examples

NOTE: When a comparison is applied to a set of values, the type of data of each source value is re-inferred to match any literal values used on the other side of the expression. This method allows for more powerful comparisons.

In the following examples, values taken from the `MySource` column are re-typed to match the inferred data type of the other side of the comparison.

### Less Than (or Equal To)

Column TypeExample TransformationOutputNotes
Integer

Transformation Name `New formula` `Single row formula` `(MySource < 5)`

• `true` for all values in `MySource` that are less than 5.
• Otherwise, `false`.

Decimal

Transformation Name `Filter rows` `Custom formula` `Custom single` `(MySource <= 2.5)` `Keep matching rows`

Retains all rows in the dataset where the value in the `MySource` column is less than or equal to 2.5.
Datetime

Transformation Name `Filter rows` `Custom formula` `Custom single` `(Date <= DATE(2009,12,31))` `Keep matching rows`

Retains all rows whose `Date` column value is less than or equal to `12/31/2009`.You can also use the `DATEDIF` function to generate the number of days difference between two date values. Then, you can compare this difference to another value. See DATEDIF Function.
String (and all other data types)

Transformation Name `New formula` `Single row formula` `(LEN(MySource) < 5))`

• `true` for any string value in the `MySource` column whose length is less than 5 characters.
• Otherwise, `false`
• See LEN Function.
• For comparison purposes, all data types not previously listed in this table behave like strings.
• Since strings are non-numeric value, a function must be applied to string data to render a comparison.

### Greater Than (or Equal To)

See previous section.

### Equal to

Column TypeExample TransformationOutputNotes
Integer

Transformation Name `New formula` `Single row formula` `(MySource == 5)`

• `true` for all values in the `MySource` column that are 5.
• Otherwise, `false`.
If the source column contains Decimal values and the right-hand side is an integer value, the Decimal values that are also integers can match in the comparison (e.g. `2.0 == 2`).
Decimal

Transformation Name `Filter rows` `Custom formula` `Custom single` `(MySource == 2.5)` `Keep matching rows`

Retains all rows in the dataset where the value in the `MySource` column is exactly 2.5.If the source column contains integers and the right-hand side is a Decimal type value, integer values are rounded for comparison.
Datetime

Transformation Name `Filter rows` `Custom formula` `Custom single` `(Date == DATE(2016,12,25))` `Keep matching rows`

Retains all rows whose `Date` column value is equal to `12/25/2016` .
String (and all other data types)

Transformation Name `Filter rows` `Custom formula` `Custom single` `(LEN(MySource) == 5))` `Keep matching rows`

Retains all rows in the dataset where the length of the string value in the `MySource` column is 5 characters.
• For comparison purposes, all data types not previously listed in this table behave like strings.
• Since strings are non-numeric value, a function must be applied to string data to render a comparison.

### Not Equal to

Column TypeExample TransformationOutputNotes
Integer

Transformation Name `New formula` `Single row formula` `(MySource <> 5)`

• `true` for all values in the `MySource` column that are not 5.
• Otherwise, `false`.
If the source column contains Decimal values and the right-hand side is an integer value, the Decimal values that are also integers can match in the comparison (e.g. `2.0 == 2` ).
Decimal

Transformation Name `Filter rows` `Custom formula` `Custom single` `(MySource <> 2.5)` `Keep matching rows`

Retains all rows in the dataset where the value in the `MySource` column is not 2.5.If the source column contains integers and the right-hand side is a Decimal type value, integer values are rounded for comparison.
Datetime

Transformation Name `Filter rows` `Custom formula` `Custom single` `(Date <> DATE(2016,4,15))` `Keep matching rows`

Retains all rows in the dataset where the `Date` value does not equal 4/15/2016.
String (and all other data types)

Transformation Name `Filter rows` `Custom formula` `Custom single` `(LEN(MySource) <> 5))` `Keep matching rows`

Retains all rows in the dataset where the length of the string value in the `MySource` column is not 5 characters.
• For comparison purposes, all data types not previously listed in this table behave like strings.
• Since strings are non-numeric value, a function must be applied to string data to render a comparison.

• Page:
• Page:
• Page:
• Page:
• Page:
• Page:
• Page:
• Page:
• Page:
• Page:
• Page: