KNOWLEDGE BASE

Values of Field Are Different in Live and Extracted Versions of Data Source with Three Joined Tables


Published: 08 Jul 2015
Last Modified Date: 13 Dec 2016

Issue

When creating an extract of a data source with three joined tables, the values returned to a view for a field from Table A are different for the live connection versus the extract.

Environment

  • Tableau Desktop 9.0.3
  • Tableau Desktop 9.1, 10.0, 10.1
  • Relational data sources

Resolution

For the join structure shown:
(A) LEFT-JOIN (B) INNER-JOIN (C)
The live connection is inaccurate, the extract is correct.

The reason the live is incorrect is because snowflake joins are evaluated from left to right.  The view of the 2 tables in the left join include all rows from the left join column.  Then when that view is joined to the third table the inner join excludes all rows except the rows that have matching values for the inner join columns. 

Option 1:
Reverse the order of the joins:
     (C) INNER-JOIN (B) RIGHT-JOIN (A)

To return the correct values for both the LIVE and EXTRACT connections.

Option 2:
Put a column from the 3rd table on the Level of Detail (LOD) for the view will cause the optimizer to provide a correct where clause to replace the culled join.

Option 3:
If the results from the LIVE connections are desired, change both of the joins to be LEFT JOINS.

Additional Information



 
Did this article resolve the issue?