Many-to-many
In Analysis-Services, Many-to-Many is a feature enabling a fact (i.e. an input row) to contribute into multiple coordinate of a given column.
For instance, in a flatten GeographicalZone column (e.g. having flattened a hierarchical Region->Country->City), a single Paris fact would contribute into Paris, France and Europe.
This can be achieved in Adhoc with a Dispatchor.
A full example is visible in TestManyToManyCubeQuery. It demonstrates how a measure can:
- query underlying measures on fine grained slices (e.g. the input slices of the many-to-many)
- project each of these slices into 0, 1 or N slices (e.g. the output slices of the many-to-many)
- generate its own columns, independently of the underlying table (
IColumnGenerator). In a many-to-many, the group column is generated by the measure, while the elements are generally generated by the table (or a previous many-to-many).
See also:
- Calculated Columns — overview of all column-generation approaches (IDecomposition, FunctionCalculatedColumn, EvaluatedExpressionColumn).
References: - Analysis Services