# Comparison Operators

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 Name

Symbol

Example Expression

Output

Notes

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:

city

column1

San Francisco

true

Los Angeles

false

Chicago

false

New York

false

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.

city

BaseballTeam

San Francisco

Home of the Giants!

Los Angeles

Some other team

Chicago

Some other team

New York

Some other team

## Examples

Tip

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 Type

Example Transformation

Output

Notes

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 theDATEDIFfunction 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 Type

Example Transformation

Output

Notes

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 whoseDatecolumn value is equal to12/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 Type

Example Transformation

Output

Notes

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 theMySourcecolumn 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 theMySourcecolumn 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.