mysql concat只能带两个参数

时间:2013-05-04 03:46:18

标签: mysql sql

我正在尝试使用MySQL 5.5.15构建一个字符串,但它似乎不适用于两个以上的args:

mysql> select concat(id, name) as me from locations; # this works
mysql> select concat(id, name, website) as me from locations; # doesn't work

一些例子有> 2 args,但它似乎没有工作。它应该有用吗?

1 个答案:

答案 0 :(得分:2)

尝试使用CONCAT_WS()

SELECT CONCAT_WS('', id, name, website) AS me FROM locations
              -- ^ this is an empty char separator, 
              --   you can define what ever you want

这可能是一个疯狂的猜测,但我认为列website的值为NULLCONCAT可能与CONCAT_WS()行为不同,因为它不会将NULL值转换为默认字符串。

这是一个简单的演示:http://www.sqlfiddle.com/#!2/c8d79/3