將多個ARRAY數組中的所有元素串連在一起,產生一個新的ARRAY數組,或將多個字串串連在一起,產生一個新的字串。
命令格式
array<T> concat(array<T> <a>, array<T> <b>[,...])
string concat(string <str1>, string <str2>[,...])
參數說明
a、b:必填。ARRAY數組。
array<T>
中的T
指代ARRAY數組元素的資料類型,數組中的元素可以為任意類型。a和b中元素的資料類型必須一致。數組中的元素為NULL值時會參與運算。str1、str2:必填。STRING類型。如果輸入參數為BIGINT、DOUBLE、DECIMAL或DATETIME類型,則會隱式轉換為STRING類型後參與運算,其他類型會返回報錯。
傳回值說明
返回ARRAY類型。如果任一輸入ARRAY數組為NULL,返回結果為NULL。
返回STRING類型。如果沒有參數或任一參數為NULL,返回結果為NULL。
使用樣本
樣本1:串連ARRAY數組
array(10, 20)
和array(20, -20)
。命令樣本如下。--返回[10, 20, 20, -20]。 select concat(array(10, 20), array(20, -20));
樣本2:ARRAY數組元素包含NULL。命令樣本如下。
--返回[10, NULL, 20, -20]。 select concat(array(10, null), array(20, -20));
樣本3:任一ARRAY數組為NULL。命令樣本如下。
--返回NULL。 select concat(array(10, 20), null);
樣本4:連接字串
aabc
和abcde
。命令樣本如下。--返回aabcabcde。 select concat('aabc','abcde');
樣本5:輸入為空白。命令樣本如下。
--返回NULL。 select concat();
樣本6:任一字串輸入為NULL。命令樣本如下。
--返回NULL。 select concat('aabc', 'abcde', null);
相關函數
CONCAT函數屬於複雜類型函數或字串函數。