Skip to main content
Version: 8.1

lookup

This function is used by Ignition's Expression language.

Description​

This looks for lookupValue in the lookupColumn of dataset. If it finds a match, it will return the value from the resultColumn on the same row as the match. If no match is found, noMatchValue is returned.

note

The type of the value returned will always be coerced to be the same type as the noMatchValue.

Syntax​

lookup(dataset, lookupValue, noMatchValue, [lookupColumn], [resultColumn])

  • Parameters

    • Dataset dataset - A dataset to search through.

    • Object lookupValue - The value to look for.

    • Object noMatchValue - The result value if no match.

    • Object lookupColumn - The column to lookup. Can either be the column index or the name of the column. Defaults to 0. [optional]

    • Object resultColumn - The column to pull the result value from. Can either be the column index or the name of the column. Defaults to 1. [optional]

  • Results

    • Object - The value in the result column of the same row that the lookupValue was found, or the noMatchValue if a match was not found. The data type of this object will always be coerced to match the type of the noMatchValue parameter.

Examples​

The examples are based of a table that has the following data in it:

ProductPriceCategory
"Apples"1.99"Fruit"
"Carrots3.5"Vegetable"
"Walnuts"6.25"Nut"
Code Snippet
lookup({Root Container.Table.data}, "Carrots", -1.0) //returns 3.50
Code Snippet
lookup({Root Container.Table.data}, "Grapefruit", -1) //returns -1, the noMatchValue
Code Snippet
lookup({Root Container.Table.data}, "Walnuts", "Unknown", 0, "Category") //returns "Nut"
Code Snippet
lookup({Root Container.Table.data}, "Pecans", "Unknown", 0, 2) //returns "Unknown", the noMatchValue