Infoworks 6.1.3
Prepare Data

Performing Exists Operation

The Exists node provides the functionality of correlated-subqueries in the where clause. It has two input tables/nodes, namely, inner table and outer table.

The outer table is the table to be filtered. Columns of only this node will be propagated downstream. The inner table is the filtering table and is used in the subquery-predicates.

A conjunction of subquery-predicates must be specified in the inner table expression text-box, with at least one correlated-subquery-predicate containing the equals (=) operator.

For correlated-predicates, one side of the equals (=) operator must reference at least one column from the outer table and the other side must reference at least one column from the inner table.

Selecting the EXISTS filter type returns only those records from the outer table where the subquery predicate evaluates to be true. Selecting the NOT EXISTS filter type returns only those records from the outer table where the subquery predicate evaluates to be false.

NOTE Subqueries cannot contain windowing clauses and nested subqueries are not supported.

Following are the steps to apply Exists node in pipeline:

  • Connect two required nodes (outer and inner tables) to the Exists node.
  • Double-click the Exists node. The properties page is displayed.
  • Click Add Filter, enter the required details and click Save. The following is an example for inner table expression.

NOTE Disjuncts, Relational operators other than equals (=), and Complex subquery predicates (like column1+column2 = 100) are not supported.