Concat — функция диаграммы | Qlik Cloud Справка
Перейти к основному содержимому

Concat — функция диаграммы

Функция Concat() используется для объединения строковых значений. Функция возвращает агрегированное объединение строк всех значений выражения, оцениваемого по каждому измерению.

Concat({[SetExpression] [DISTINCT] [TOTAL [<fld{, fld}>]]} string[, delimiter[, sort_weight]])

Возвращаемые типы данных: string

Аргументы
Аргумент Описание
string

Выражение или поле, содержащее строку для обработки.

delimiter Каждое значение может быть разделено строкой, найденной в delimiter.
sort-weight

Порядок конкатенации может определяться значением измерения sort-weight, если оно присутствует, при этом строка, соответствующая наименьшему значению, будет первой в конкатенации

SetExpression По умолчанию функция агрегирования агрегирует множество возможных записей, определенных выборкой. Альтернативный набор записей может быть определен выражением анализа множества.
DISTINCT Если слово DISTINCT указывается до аргументов функции, все дубликаты, возникшие в результате оценки аргументов функции, будут проигнорированы.
TOTAL

Если слово TOTAL стоит перед аргументами функции, вычисление выполняется по всем возможным значениям, указанным в текущих выборках, а не только в тех, которые относятся к значению текущего измерения, т. е. измерения диаграммы игнорируются.

При использовании выражения TOTAL [<fld {.fld}>], где префикс TOTAL предшествует списку из одного или нескольких имен полей, выступающих в качестве подмножества переменных измерения диаграммы, создается подмножество всех возможных значений.

Определение объема агрегирования

Results table
SalesGroup Amount Concat(Team) Concat(TOTAL <SalesGroup> Team)
East 25000 Alpha AlphaBetaDeltaGammaGamma
East 20000 BetaGammaGamma AlphaBetaDeltaGammaGamma
East 14000 Delta AlphaBetaDeltaGammaGamma
West 17000 Epsilon EpsilonEtaThetaZeta
West 14000 Eta EpsilonEtaThetaZeta
West 23000 Theta EpsilonEtaThetaZeta
West 19000 Zeta EpsilonEtaThetaZeta
Примеры функций
Пример Результат
Concat(Team)

Таблица построена на основе измерений SalesGroup и Amount, а также вариантов меры Concat(Team). Если не учитывать результат строки Totals, обратите внимание, что хотя в данных присутствует восемь значений Team, распределенных по двум значениям SalesGroup, единственным результатом меры Concat(Team), объединяющим более одного строкового значения Team в таблице, является строка, содержащая измерение Amount со значением 20000, которая возвращает результат BetaGammaGamma. Это связано с тем, что во входных данных есть три значения для Amount 20000. Все остальные результаты остаются необъединенными при распределении меры по измерениям, так как для каждого сочетания SalesGroup и Amount существует только одно значение Team.

Concat(DISTINCT Team,', ') Beta, Gamma, поскольку спецификатор DISTINCT означает, что дубликат результата Gamma игнорируется. Кроме того, аргумент разделителя определен как запятая с последующим пробелом.
Concat (TOTAL <SalesGroup> Team) Все строковые значения для всех значений Team объединяются, если используется спецификатор TOTAL. При указании выбора поля <SalesGroup> результаты разделяются по двум значениям измерения SalesGroup. Для SalesGroupEast возвращаются результаты AlphaBetaDeltaGammaGamma. Для SalesGroupWest возвращаются результаты EpsilonEtaThetaZeta.
Concat (TOTAL <SalesGroup> Team,';', Amount) При добавлении аргумента для sort-weight: Amount результаты упорядочиваются по значению измерения Amount. Результатами становятся DeltaBetaGammaGammaAlpha и EtaEpsilonZEtaTheta.

Данные, используемые в примере:

TeamData:

LOAD * inline [

SalesGroup|Team|Date|Amount

East|Gamma|01/05/2013|20000

East|Gamma|02/05/2013|20000

West|Zeta|01/06/2013|19000

East|Alpha|01/07/2013|25000

East|Delta|01/08/2013|14000

West|Epsilon|01/09/2013|17000

West|Eta|01/10/2013|14000

East|Beta|01/11/2013|20000

West|Theta|01/12/2013|23000

] (delimiter is '|');

Помогла ли вам эта страница?

Если вы обнаружили какую-либо проблему на этой странице или с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом!