Qlik Community

New to QlikView

Discussion board where members can get started with QlikView.

Announcements
Modernize Your QlikView Deployment webinar, Nov. 3rd. REGISTER
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Contributor II
Contributor II

Максимальные значения по нескольким измерениям в сводной таблице

Здравствуйте. Помогите пожалуйста разобраться с достаточно тривиальной задачей.

Например, на рисунке ниже:

image.png

Измерение "дата" расположено  по горизонтали .

Как добиться того, чтобы в таблице остались только максимальные значения?

image.png

так же прикладывает тестовый файл.

1 Solution

Accepted Solutions
Highlighted
Specialist
Specialist

Добрый день!

При расчете максимума нужно зафиксировать поля-строки - "фигура" и "буква", тогда по всем ячейкам поля "дата" будут расставлены максимальные значения.

Затем, нужно добавить проверку совпадения  "числа" с максимумом.

letter_pic1.png

View solution in original post

6 Replies
Highlighted
Specialist
Specialist

Добрый день!

При расчете максимума нужно зафиксировать поля-строки - "фигура" и "буква", тогда по всем ячейкам поля "дата" будут расставлены максимальные значения.

Затем, нужно добавить проверку совпадения  "числа" с максимумом.

letter_pic1.png

View solution in original post

Highlighted
Contributor II
Contributor II

Я новичёк ещё пока в QV. Но это гениально! Правда не совсем понял как это работает. Буду разбирать вашу формулу. Спасибо вам огромное!

Highlighted
Specialist
Specialist

Пожалуйста, всегда рад помочь.

TOTAL, как правило, используется для подсчета итоговой суммы по измерениям, чтобы найти, например, долю от общей суммы. Или чтобы посчитать средневзвешанное значение.

В случае с функцией max() будет найдено максимальное значение в указанных измерениях (задаются в угловых скобках).

На картинке я попытался отобразить результат разных тоталов, может быть, она будет полезной:

letter_pic2.png

Т.е. тотал по фигуре - это одно максимальное значение для каждой фигуры (проставляется во всех ячейках других измерений).

Добавляя в тотал измерение "буква" мы "сужаем диапазон" по которому ищется максимум.

В результате максимум уже будет проставляться не по всем ячейкам других измерений, а по строкам - то, что нам и было нужно в поставленной задаче.

Highlighted
Contributor II
Contributor II

Теперь всё ясно. А можно ещё вопрос? Можно ли не отображать одинаковые значения как максимальные? Например как на рисунке:

image.png

ведь, по сути, у них нет максимума.

Highlighted
Contributor II
Contributor II

Сам нашёл вот такое решение:

if(
not isNull(max(total <фигура, буква> число,2)),
if(число = max(total <фигура, буква> число),число),null())

Highlighted
Specialist
Specialist

Очень лаконичное решение!