Document toolboxDocument toolbox

LINQ syntax differences: Activeboards vs search window 8.x.x

Due to architectural differences, the LINQ syntax presents some particularities in Activeboards and the search window. Therefore, keep in mind that copying a LINQ query from the search window and pasting it into an Activeboard widget, or vice versa, might not work. Before examining the differences explained below, you can visit Build a query using LINQ to know the standard procedures when working with LINQ.

Tip

You don't need to transform your search window queries if you use the My last search queries and My favorite search queries boxes in the Data menu of the Activeboards area. They will be automatically transformed into the required format and will be added as aggregation tasks when required.

Addition, sum, plus / Concatenation (add, +) operations

When you use this operation in the Data Search, you can add as many arguments as needed (where applicable), however, the number of arguments is limited to two when used in Activeboards.

As a workaround, you can perform subsequent adding operations until you have added all the arguments you need.

Search window

Activeboards

Search window

Activeboards

Syntax:

Create field: select add(value1, value2, value3, value4...) as totalField

 

Query example:

from demo.ecommerce.data select add(bytesTransferred, timeTaken, statusCode) as `totalField`

Syntax:

Create field: select add(value1, value2) as totalFieldA, add(totalFieldA, value3) as totalFieldB, add(totalFieldB, value4) as totalFieldC...

Query example:

query(from demo.ecommerce.data select add(bytesTransferred, timeTaken) as totalFieldA, add(totalFieldA, statusCode) as totalFieldFinal)

Related articles: Addition, sum, plus / Concatenation (add, +)

Comparison operations

Operations inside the detection group that imply comparing elements (such as equal, greater than, less than, etc.) are slightly adjusted in queries used from the search window to Activeboards or vice versa. On a general basis, both constructions work fine in both areas but each area has one of them as the default. This can create confusion because of the automatic transformations that are carried out in several processes when bringing queries from one place to the other. Here you have the preferred syntax for each of them, both to filter and create field:

Search window

Activeboards

Search window

Activeboards

Syntax:

Create field: select field operator "value"/field as fieldName
Filter: where field operator "value"/field 

 

Query example:

from demo.ecommerce.data where method = "POST"select timeTaken >= bytesTransferred

Syntax:

Create field: select operator (field, "value"/field) as fieldName
Filter: where operator(field, "value"/field)

Query example:

Related articles: Detection group

Lookup operations (remove)

Queries to use lookup operations present some particularities that make them incompatible when used from the search window to Activeboards or vice versa. The use of symbols is different and the domain name is required in one of them.

Search window

Activeboards

Search window

Activeboards

Syntax:

select `lu/lookupName/lookupfield`(field) as newfieldName

 

Query example:

Syntax:

select lu("lookupName", "lookupfield", field) as newfieldName

Query example:

Related article: Data enrichment

Maximum (max) operations → create field

When you use this operation in the Data Search to create a new field, you can add as many arguments as needed, however, the number of arguments is limited to two when used in Activeboards.

As a workaround, you can perform subsequent maximum operations until you have obtained the maximum of all the arguments you need.

Search window

Activeboards

Search window

Activeboards

Syntax:

Create field: select max(value1, value2, value3, value4...) as maxField

 

Query example:

Syntax:

Create field: select max(value1, value2) as maxFieldA, max(maxFieldA, value3) as maxFieldB, max(maxFieldB, value4) as maxFieldC...

Query example:

Related articles: Maximum (max)

Minimum (min) operations → create field

When you use this operation in the Data Search to create a new field, you can add as many arguments as needed, however, the number of arguments is limited to two when used in Activeboards.

As a workaround, you can perform subsequent minimum operations until you have obtained the minimum of all the arguments you need.

Search window

Activeboards

Search window

Activeboards

Syntax:

Create field: select min(value1, value2, value3, value4...) as minField

 

Query example:

Syntax:

Create field: select min(value1, value2) as minFieldA, min(minFieldA, value3) as minFieldB, min(minFieldB, value4) as minFieldC...

Query example:

Related articles: Minimum (min)

Mlevalmodel operation

Mlevalmodel operation is not supported in search window. Use this operation in Activeboards when you want to work with models you uploaded in Model Management.

Search window

Activeboards

Search window

Activeboards

Not supported

Query examples:

Example:

Refer article: Model Management

Multiplication, product (mul, *) operations

When you use this operation in the Data Search, you can add as many arguments as needed, however, the number of arguments is limited to two when used in Activeboards.

As a workaround, you can perform subsequent multiplication operations until you have multiplied all the arguments you need.

Search window

Activeboards

Search window

Activeboards

Syntax:

Create field: select mul(value1, value2, value3, value4...) as resultField

 

Query example:

Syntax:

Create field: select mul(value1, value2) as resultFieldA, mul(resultFieldA, value3) as resultFieldB, mul(resultFieldB, value4) as resultFieldC...

Query example:

Related articles: Multiplication, product (mul, *)