每天学一个MySQL函数(二):CONCAT_WS

MySQL CONCAT_WS() 函数

MySQL CONCAT_WS() 函数用来通过指定的分隔符按顺序拼接指定的 2 个或多个字符串,并返回拼接后的字符串。

如果拼接的参数中一个为 NULL, CONCAT_WS() 函数会忽略 NULL 值,这里与CONCAT()不同。

如果只有一个参与拼接的字符串参数,则原样返回此字符串。

CONCAT_WS() 语法

CONCAT_WS(separator, string1, string2, ..., stringN)

参数说明

separator

  • 分隔符,必须的。您可以使用单个字符,也可以使用字符串。

string1, string2, …, stringN

  • 必需,至少应指定一个字符串;
  • 如果拼接的参数为 NULL, 则会被忽略;
  • 当不指定字符串时,MySQL 将会报错:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CONCAT_WS'

返回值

  • CONCAT_WS() 函数返回使用分隔符连接后的多个字符串。

  • 如果 separator 为 NULL,CONCAT_WS() 函数将返回 NULL。

  • 如果 string1, string2, …, stringN 中有 NULL,则会被 CONCAT_WS() 函数忽略。

示例

SELECT CONCAT_WS('-', 'Hello', 'World');
+----------------------------------+
| CONCAT_WS('-', 'Hello', 'World') |
+----------------------------------+
| Hello-World                      |
+----------------------------------+

CONCAT_WS() 函数会忽略 NULL 值的参数。请看如下的示例:

SELECT CONCAT_WS('-', 'Hello', NULL, 'World');
+----------------------------------------+
| CONCAT_WS('-', 'Hello', NULL, 'World') |
+----------------------------------------+
| Hello-World                            |
+----------------------------------------+

如果只有一个参与拼接的字符串参数,CONCAT_WS() 函数会原样返回此字符串。

SELECT CONCAT_WS('-', 'Hello');
+-------------------------+
| CONCAT_WS('-', 'Hello') |
+-------------------------+
| Hello                   |
+-------------------------+

你可能感兴趣的:(每天学一个MySQL函数,mysql,数据库)