Поделиться через


CONCATENATE

применяется:вычисляемый столбецвычисляемой таблицыизмерениевизуального вычисления

Объединяет две текстовые строки в одну текстовую строку.

Синтаксис

CONCATENATE(<text1>, <text2>)

Параметры

Срок Определение
text1 Первая текстовая строка, которая должна быть присоединена к одной текстовой строке. Строка может содержать текст или числа. Также можно использовать ссылки на столбцы.
text2 Вторая текстовая строка, которая должна быть присоединена к одной текстовой строке. Строка может содержать текст или числа. Также можно использовать ссылки на столбцы.

Возвращаемое значение

Сцепленная строка.

Замечания

  • Функция CONCATENATE объединяет две текстовые строки в одну текстовую строку. Присоединенные элементы могут быть текстом, числами, логическими значениями, представленными как текст, или сочетанием этих элементов. Можно также использовать ссылку на столбец, если столбец содержит соответствующие значения.

  • Функция CONCATENATE в DAX принимает только два аргумента, а функция Excel CONCATENATE принимает до 255 аргументов. Если необходимо объединить несколько столбцов, можно создать ряд вычислений или использовать оператор объединения (&) для объединения всех столбцов в более простом выражении.

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

  • Эта функция не поддерживается для использования в режиме DirectQuery при использовании в вычисляемых столбцах или правилах безопасности на уровне строк (RLS).

Пример: объединение литералы

Пример формулы создает новое строковое значение путем объединения двух строковых значений, которые предоставляются в качестве аргументов.

= CONCATENATE("Hello ", "World") 

Пример: объединение строк в столбцах

Пример формулы возвращает полное имя клиента, как указано в телефонной книге. Обратите внимание, как вложенная функция используется во втором аргументе. Это один из способов объединения нескольких строк при наличии более двух значений, которые необходимо использовать в качестве аргументов.

= CONCATENATE(Customer[LastName], CONCATENATE(", ", Customer[FirstName]))

Пример: условное объединение строк в столбцах

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

= CONCATENATE( [FirstName]&" ", CONCATENATE( IF( LEN([MiddleName])>1, LEFT([MiddleName],1)&". ", ""), [LastName]))

Эта формула использует вложенные CONCATENATE и функции IF вместе с оператором амперсанда (&) для условного объединения трех строковых значений и добавления пробелов в качестве разделителей.

Пример. Объединение столбцов с различными типами данных

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

Описание продукта Сокращение продукта (столбец 1 составного ключа) Номер продукта (столбец 2 составного ключа) Новый созданный ключевой столбец
Горный велосипед MTN 40 MTN40
Горный велосипед MTN 42 MTN42
= CONCATENATE('Products'[Product abbreviation],'Products'[Product number])

Функция CONCATENATE в DAX принимает только два аргумента, а функция Excel CONCATENATE принимает до 255 аргументов. Если вам нужно добавить дополнительные аргументы, можно использовать оператор ampersand (&). Например, следующая формула выдает результаты, MTN-40 и MTN-42.

= [Product abbreviation] & "-" & [Product number]

CONCATENATEX