CONCATENATE 函數
聯結兩個文字字串成為一個文字字串。
語法
CONCATENATE(<text1>, <text2>)
參數
詞彙 |
定義 |
---|---|
text1、text2 |
要聯結成單一文字字串的文字字串。 字串可以包含文字或數字。 您也可以使用資料行參考。 |
傳回值
串連的字串。
備註
CONCATENATE 函數會將兩個文字字串聯結成一個文字字串。 聯結的項目可以是文字、數字或表示文字的布林值,或是這些項目的組合。 如果資料行中包含適當的值,您也可以使用資料行參考。
DAX 中的 CONCATENATE 函數僅接受兩個引數,而 Excel CONCATENATE 函數最多接受 255 個引數。 如果您需要串連多個資料行,可以建立一連串的計算,或 (建議) 使用串連運算子 (&) 將所有計算聯結成更簡化的單一運算式。
如果您想要直接使用文字字串,而不使用資料行參考,則必須以雙引號括住每個字串。
在以 DirectQuery 模式部署然後查詢的模型中使用時,此 DAX 函數可能會傳回不同的結果。 如需有關 DirectQuery 模式語意差異的詳細資訊,請參閱 https://go.microsoft.com/fwlink/?LinkId=219171。
範例:常值的串連
說明
此範例公式會結合兩個字串值 (提供的引數) 以建立一個新字串。
程式碼
=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) |
新產生的索引鍵資料行 |
---|---|---|---|
Mountain bike |
MTN |
40 |
MTN40 |
Mountain bike |
MTN |
42 |
MTN42 |
程式碼
=CONCATENATE('Products'[Product abbreviation],'Products'[Product number])
註解
DAX 中的 CONCATENATE 函數僅接受兩個引數,而 Excel CONCATENATE 函數最多接受 255 個引數。 如果您需要加入更多引數,可以使用連字號 (&) 運算子。 例如,下列公式會產生結果 MTN 40 和 MTN 42。
=[Product abbreviation] & "-" & [Product number]