Scalar-valued functions
Last updated
Last updated
Scalar-valued functions are a type of function used in programming and database query languages that return a single value. This is in contrast to table-valued functions, which return a set of rows.
With CQL, you can execute some JavaScript logic on the provided inputs and return a single value as a result. This can be powerful because JavaScript enables complex computations and operations on the data, beyond what traditional SQL might support.
Select a scalar value UDF as a column (Image 1).
Scalar-valued functions have to be invoked with a parameter, even if the definition of the function doesn't require a parameter. You can pass a string:
SELECT my_scalar('a') FROM [Cinchy].[Tables] WHERE [Deleted] IS NULL AND [Cinchy Id]=1
Once you confirm that the UDF returns the expected result though a query, a calculated column can be include.
Depending on how intensive or live you want the calculation to be, choose whether to make it a live or cached calculated column.
Simply add your UDF to the calculated column (Image 2).
To use the UDF to trigger an action (such as creating a row in another table), it should be a cached calculated column.
Watch out for the following scenarios:
Don't trigger when you don't have all the necessary fields.
Don't trigger when non-relevant data on the row changes.
Make sure to appropriately insert and/or update in another table.