У меня проблема, когда в кросс-таблице с несколькими столбцами есть несколько строк мер, где я хотел бы иметь только одну.
Перекрестная таблица выглядит так:
|-----Amount-----|
SITE-----|---PERSON---|----------------|
----------------------|----------------|
SITE1 | James | 45 |
SITE2 | John | 34 |
SITE2 | Jones | 34 |
SITE3 | Jane | 54 |
----------------------|----------------|
TOTAL-----------------| 167 |
Итак, первый столбец - это сайт, второй - люди на сайте (обратите внимание, что на site2 два человека). Структура упрощена, но суть вы поняли.
я бы хотел иметь следующую структуру:
|-----Amount-----|
SITE-----|---PERSON---|----------------|
----------------------|----------------|
SITE1 | James | 45 |
SITE2 | John | 34 |
SITE2 | Jones | |
SITE3 | Jane | 54 |
----------------------|----------------|
TOTAL-----------------| 133 |
Таким образом, строки показателей создаются только из столбца сайта, а не из столбцов сайта и человека. Таким образом, я могу рассчитать общую сумму по сайтам, а не по людям. В настоящее время повторяющиеся строки приводят к тому, что общее значение выше, чем оно есть на самом деле.
Есть ли способ добиться этого с помощью кросс-таблицы, или мне нужно подумать о другом подходе (второй список для отображения сайтов и людей) для этого варианта использования.
‹--------------------EDIT-------------------->
Я ошибочно объяснил столбец суммы в моем примере. У меня есть таблица, содержащая события продаж, и мерой суммы должно быть количество событий продаж на сайте. Итак, я пытаюсь решить вопрос: Для данного типа событий продаж перечислите сайты, на которых эти продажи произошли, перечислите людей, работающих на этом сайте, и укажите общее количество событий продаж на указанном сайте < / em>. Итак, в основном я получаю все события продаж с помощью некоторого фильтра (type = something). У этих распродаж есть сайт, на котором они произошли. на этом сайте работает от нуля до n сотрудников. Таким образом, существует одно внутреннее соединение между событием продаж и сайтом и внешнее соединение между сайтом и таблицей людей. Запрос SQL возвращает такие данные:
sales_event_1|site1|James|type1|subtype2
sales_event_2|site2|John|type1|subtype1
sales_event_2|site2|Jones|type1|subtype1
sales_event_3|site2|John|type1|subtype2
sales_event_3|site2|Jones|type1|subtype2
sales_event_4|site3|Jane|type1|subtype1
...
Итак, структура кросс-таблицы следующая:
Rows= site|person
Columns= subtype
measure= count (distinct [sales_event_id] for [site])
А кросс-таблица выглядит примерно так:
|-----subtype1----|-----subtype2----|-----total----|
SITE-----|---PERSON---|-----------------|-----------------|--------------|
----------------------|-----------------|-----------------|--------------|
SITE1 | James | 35 | 10 | 45 |
SITE2 | John | 20 | 14 | 34 |
SITE2 | Jones | 20 | 14 | 34 |
SITE3 | Jane | 54 | 0 | 54 |
--------------------------|-------------|-----------------|--------------|
TOTAL-----------------|-----------------|-----------------| 133 |
Надеюсь, это поможет вам, ребята.