MySQL 的 CONCAT_WS(~) 方法使用指定的分隔符连接输入字符串。
参数
1. separator | string
要在要连接的字符串之间添加的分隔符。
2. str1 | string
与其他字符串输入连接的字符串。
3. str2 | string
与其他字符串输入连接的字符串。可以提供任意数量的字符串输入。
返回值
在字符串输入之间添加分隔符的串联字符串。
例子
考虑下表有关一些学生的信息:
| 
 student_id  | 
 名称  | 
 名字  | 
 day_enrolled  | 
 年龄  | 
 用户名  | 
|---|---|---|---|---|---|
| 
 1  | 
 Sky  | 
 Towner  | 
 2015-12-03  | 
 17  | 
 stowner1  | 
| 
 2  | 
 Ben  | 
 Davis  | 
 2016-04-20  | 
 19  | 
 bdavis2  | 
| 
 3  | 
 Travis  | 
 Apple  | 
 2018-08-14  | 
 18  | 
 tapple3  | 
| 
 4  | 
 Arthur  | 
 David  | 
 2016-04-01  | 
 16  | 
 adavid4  | 
| 
 5  | 
 Benjamin  | 
 Town  | 
 2014-01-01  | 
 17  | 
 btown5  | 
可以使用此处的代码创建上述示例表。
基本用法
要将 fname 和 lname 连接起来,并在其间添加 '*':
SELECT CONCAT_WS('*', fname, lname)
FROM students;
+------------------------------+
| CONCAT_WS('*', fname, lname) |
+------------------------------+
| Sky*Towner                   |
| Ben*Davis                    |
| Travis*Apple                 |
| Arthur*David                 |
| Benjamin*Town                |
+------------------------------+
要使用 AS 为结果列提供别名:
SELECT CONCAT_WS(' ', fname, lname) AS "Full Name"
FROM students;
+---------------+
| Full Name     |
+---------------+
| Sky Towner    |
| Ben Davis     |
| Travis Apple  |
| Arthur David  |
| Benjamin Town |
+---------------+
数字参数
数字参数自动转换为字符串:
SELECT CONCAT_WS(' ', fname, 'is', age, 'years old.') AS "Sentence"
FROM students;
+---------------------------+
| Sentence                  |
+---------------------------+
| Sky is 17 years old.      |
| Ben is 19 years old.      |
| Travis is 18 years old.   |
| Arthur is 16 years old.   |
| Benjamin is 17 years old. |
+---------------------------+
空参数
NULL 输入字符串被跳过:
SELECT CONCAT_WS('-', 'Welcome', NULL, 'to', 'SkyTowner!');
+-----------------------------------------------------+
| CONCAT_WS('-', 'Welcome', NULL, 'to', 'SkyTowner!') |
+-----------------------------------------------------+
| Welcome-to-SkyTowner!                               |
+-----------------------------------------------------+
NULL 分隔符返回 NULL :
SELECT CONCAT_WS(NULL, 'Welcome', 'to', 'SkyTowner!');
+------------------------------------------------+
| CONCAT_WS(NULL, 'Welcome', 'to', 'SkyTowner!') |
+------------------------------------------------+
| NULL                                           |
+------------------------------------------------+
相关用法
- MySQL CONCAT_WS()用法及代码示例
 - MySQL CONCAT()用法及代码示例
 - MySQL CONCAT方法用法及代码示例
 - MySQL CONV( )用法及代码示例
 - MySQL CONVERT_TZ方法用法及代码示例
 - MySQL CONVERT_TZ()用法及代码示例
 - MySQL CONVERT( )用法及代码示例
 - MySQL CONNECTION_ID( )用法及代码示例
 - MySQL CONV方法用法及代码示例
 - MySQL COUNT()用法及代码示例
 - MySQL COT()用法及代码示例
 - MySQL COMPRESS( )用法及代码示例
 - MySQL COT方法用法及代码示例
 - MySQL COALESCE()用法及代码示例
 - MySQL COS()用法及代码示例
 - MySQL COUNT方法用法及代码示例
 - MySQL COS方法用法及代码示例
 - MySQL CURTIME()用法及代码示例
 - MySQL Convert()用法及代码示例
 - MySQL CEIL方法用法及代码示例
 - MySQL CHARACTER_LENGTH()用法及代码示例
 - MySQL CEILING()用法及代码示例
 - MySQL CURRENT_TIME()用法及代码示例
 - MySQL CHAR_LENGTH()用法及代码示例
 - MySQL CHAR and VARCHAR用法及代码示例
 
注:本文由纯净天空筛选整理自Arthur Yanagisawa大神的英文原创作品 MySQL | CONCAT_WS method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
