Is the cardinality specified in a join between two Query Subjects of meaning if we put a definition in the expression box....The definition in the expression box would mean we arent using the links buttton.
Using the links generates the join expression. It is then possible to override the expression. It would depend on the override whether cardinality would still matter. If you would add an additional restriction on the join it would still matter to Cognos. If you define a theta join (like a between statement ) it may no longer be relevant
Why does it diregard if we have a theta join?
No matter what your join expression, the query planner will still use the cardinality to determine whether it needs to stitch multiple fact queries together.
Quote from: Greg on 04 Oct 2012 03:18:28 PM
No matter what your join expression, the query planner will still use the cardinality to determine whether it needs to stitch multiple fact queries together.
I do not think so.. If you just add an additional clause to the join like 'and xxxx = .... ' it is still easy to determine fact and non-fact side. However , with a thetajoin like 'between' the 1 and n side of the relationship may be irrelevant.
I think the OP wwas out to determine whether the coding of the relationship would differ from using the GUI. The GUI can only generate an equi-join
The query engine doesn't look at the relationship expression at all to determine fact and non-fact side of a join. It relies exclusively on the cardinalities specified for the join.
Quote from: Greg on 09 Oct 2012 12:32:30 PM
The query engine doesn't look at the relationship expression at all to determine fact and non-fact side of a join. It relies exclusively on the cardinalities specified for the join.
True, I was not denying that part but merely stating that a non equi-join may concern a scenario outside the scope of fact - non-fact. This is often the case with event / factless fact tables. It may also occur in case your coding an 'in between' join to generate rows for use in crosstabs