MariaDB GROUP_CONCAT只返回一个值

时间:2014-08-24 20:19:59

标签: mysql sql group-concat mariadb

我在我的实例中遇到了GROUP_CONCAT函数的一个奇怪问题,使用它将整数组合在一起工作得很好,但是将它应用到varchar根本不起作用。

数据如下:

CUSTOMERID  LOCATIONNAME    PRODUCTID   UNITS   ID  PRODUCTNAME
1           Location            65       100    1   Product 65
1           Location            66       100    2   Product 66
1           Location            67       100    3   Product 67
1           Location            68       100    4   Product 68
1           Location            68       100    5   Product 68

当我跑步时:SELECT GROUP_CONCAT(DISTINCT lm.ProductID) as Brand FROM locationMap lm WHERE (lm.CustomerID = 1);

返回65,66,67,68并正常工作。

当我跑步时:SELECT GROUP_CONCAT(DISTINCT lm.ProductName) as Brand FROM locationMap lm WHERE (lm.CustomerID = 1);

仅返回第一项(产品65)。

我设置了一个SQL小提琴(http://www.sqlfiddle.com/#!2/2392f/3)来测试它,一切都在那里正常运行。任何人都可以提出我的环境中可能导致错误的建议吗?我正在运行5.5.30-MariaDB-30.1

1 个答案:

答案 0 :(得分:2)

已验证将服务器从5.5.30-MariaDB-30.1升级到5.5.38-MariaDB-35.2已解决此问题。感谢大家的建议。