does fixed LOD expression return row-level values?

632 views Asked by At

I have difficulties to understand how we can say that fixed LOD expressions return "row-level values" (ref)

  1. Definition of row-level expressions ref: Expressions referencing unaggregated data source columns (e.g.,[Sales] / [Profit]) and computed for each row in the underlying table producing a new column. When imported, Tableau shall typically aggregate the calculated field up to the view-level.

  2. By construction LOD expression {fixed [dimensions]: "aggregate expression"} use an aggregate expression, e.g. SUM([Sales]/SUM([Profit]). Source columns are computed at the dimensionality defined by the LOD scope. Nothing row-level here, right ?

  3. I conceptualise LOD expressions in general ref as a select ... group by [dimensions in the LOD scope] joined to a select ... group by [dimensions in the view]. In all the case a fixed LOD expression is almost never at a row-level ?

  • If LOD scope is finer than view level the select statement need to be nested into another statement and aggregated up to the view level before being joined. When calculations implying a finer expression are imported in the view, an aggregation is automatically assigned by Tableau, e.g., AVG{fixed [dimensions]: "aggregate expression"}.

  • If LOD scope is coarser than view level certain values will be replicated in the output. This is why when calculations including EXCLUDE LOD expressions (always coarser than the view) are placed on a shelf, Tableau defaults to the ATTR aggregation as opposed to SUM or AVG, to indicate that the expression is not actually being aggregated and that changing the aggregation will have no effect on the view.

1

There are 1 answers

1
Alex Blakemore On

Saying LOD calcs return “row level values” is just sloppy shorthand language, probably meant to highlight that they can be referenced by a row level calc, unlike an aggregate calc.

You description above is correct. I think of LOD calcs as generating a table at the specified level of detail that is then joined with the original data