MariaDB CONCAT_WS() 函数使用指南
在 MariaDB 中,CONCAT_WS()
是一个内置的字符串函数,它使用指定的分隔符连接其他字符串参数并返回结果。
如果您不需要使用分隔符连接字符串,请使用 CONCAT()
函数。
MariaDB CONCAT_WS()
语法
这里是 MariaDB CONCAT_WS()
函数的语法:
CONCAT_WS(separator, str1, str2, ..., strN)
参数说明
separator
- 必需的。分隔符。您可以使用单个字符,也可以使用字符串。
str1, str2, ..., strN
- 必需的。需要连接的字符串列表。
-
字符串列表中的
NULL
值将会被忽略。 -
当不指定字符串时,MariaDB 将会报错: ERROR 1582 (42000): Incorrect parameter count in the call to native function ‘CONCAT_WS’。
如果您不指定参数, MariaDB 将报告一个错误:ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CONCAT_WS'
。
返回值
MariaDB CONCAT_WS()
函数返回使用分隔符连接给定的多个字符串并返回结果。
如果分隔符 separator
为 NULL
,CONCAT_WS()
函数将返回 NULL
。
MariaDB CONCAT_WS()
示例
单个字符做分隔符
下面的语句利用 MariaDB CONCAT_WS()
函数使用 ,
做为分隔符连接这几个水果名称 Apple
, Peach
, Banana
:
SELECT CONCAT_WS( ',', 'Apple', 'Peach', 'Banana');
输出:
+---------------------------------------------+
| CONCAT_WS( ',', 'Apple', 'Peach', 'Banana') |
+---------------------------------------------+
| Apple,Peach,Banana |
+---------------------------------------------+
字符串做为分隔符
您可以使用一个字符串作为分隔符。
下面的语句利用 MariaDB CONCAT_WS()
函数使用 ----
做为分隔符连接这几个水果名称 Apple
, Peach
, Banana
:
SELECT CONCAT_WS( '-----', 'Apple', 'Peach', 'Banana');
输出:
+-------------------------------------------------+
| CONCAT_WS( '-----', 'Apple', 'Peach', 'Banana') |
+-------------------------------------------------+
| Apple-----Peach-----Banana |
+-------------------------------------------------+
连接 NULL
参数
字符串列表中的 NULL
值会被 CONCAT_WS()
忽略。
下面的示例说明了这一点:
SELECT CONCAT_WS( ',', 'Apple', NULL, 'Banana');
输出:
+------------------------------------------+
| CONCAT_WS( ',', 'Apple', NULL, 'Banana') |
+------------------------------------------+
| Apple,Banana |
+------------------------------------------+
缺少字符串列表
如果您不指定字符串列表,CONCAT_WS()
函数将返回一个错误:ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CONCAT_WS'
。
SELECT CONCAT_WS(',');
输出:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CONCAT_WS'
二进制字符串
如果您使用二进制字符串, CONCAT_WS()
函数也返回二进制字符串。
SELECT CONCAT_WS( ',', BINARY 'Apple', 'Peach');
输出:
+------------------------------------------+
| CONCAT_WS( ',', BINARY 'Apple', 'Peach') |
+------------------------------------------+
| Apple,Peach |
+------------------------------------------+
您可以使用 COLLATION()
函数来检查结果的排序规则:
SELECT COLLATION(CONCAT_WS( ',', BINARY 'Apple', 'Peach'));
输出:
+-----------------------------------------------------+
| COLLATION(CONCAT_WS( ',', BINARY 'Apple', 'Peach')) |
+-----------------------------------------------------+
| binary |
+-----------------------------------------------------+
结论
MariaDB CONCAT_WS()
函数使用指定的分隔符连接制定的字符串列表并返回结果。