有个需求用concat以这种格式打印查询
mysql> select concat(name,':',age) from employee; +----------------------+ | concat(name,':',age) | +----------------------+ | alex:78 | | yuanhao:73 | | liwenzhou:28 | | jingliyang:18 | | jinxin:18 | | 成龙:48 | | 歪歪:48 | | 丫丫:38 | | 丁丁:18 | | 星星:18 | | 格格:28 | | 张野:28 | | 程咬金:18 | | 程咬银:18 | | 程咬铜:18 | | 程咬铁:18 | +----------------------+ 16 rows in set (0.00 sec)
mysql> select concat(name,':',age,':',sex)from employee; +------------------------------+ | concat(name,':',age,':',sex) | +------------------------------+ | alex:78:male | | yuanhao:73:male | | liwenzhou:28:male | | jingliyang:18:female | | jinxin:18:male | | 成龙:48:male | | 歪歪:48:female | | 丫丫:38:female | | 丁丁:18:female | | 星星:18:female | | 格格:28:female | | 张野:28:male | | 程咬金:18:male | | 程咬银:18:female | | 程咬铜:18:male | | 程咬铁:18:female | +------------------------------+ 16 rows in set (0.00 sec)
mysql中 有个concat_ws 可以简单实现
CONCAT_WS() 第一个参数为分隔符
mysql> select concat_ws(':',name,age,sex) as info from employee; +----------------------+ | info | +----------------------+ | alex:78:male | | yuanhao:73:male | | liwenzhou:28:male | | jingliyang:18:female | | jinxin:18:male | | 成龙:48:male | | 歪歪:48:female | | 丫丫:38:female | | 丁丁:18:female | | 星星:18:female | | 格格:28:female | | 张野:28:male | | 程咬金:18:male | | 程咬银:18:female | | 程咬铜:18:male | | 程咬铁:18:female | +----------------------+ 16 rows in set (0.00 sec)