如何在mysql用户定义的变量中存储多个值

时间:2012-12-14 15:59:13

标签: mysql variables

如何将多个值存储在mysql用户定义变量

一般来说,

select @a:=color from tabex;

其中tabex如下

mysql> select * from tabex;

+----+----------+-------+-----------+
| id | personid | color | color_set |
+----+----------+-------+-----------+
|  1 |        1 | red   | red,white |
|  2 |        1 | white | red,white |
|  3 |        2 | blue  | NULL      |
|  4 |        2 | red   | NULL      |
+----+----------+-------+-----------+

然后如果我执行查询

mysql> select @a;

+------+
| @a   |
+------+
| red  |
+------+

我得到了上述结果,但实际上我想得到以下结果

+-------+
|  @a   |
+-------+
| red   |
| white |
| blue  |
| red   |
+-------+

你能不能请任何人告诉我,这是否可能在mysql中。

我的问题是如何在mysql用户定义变量中存储多个值

1 个答案:

答案 0 :(得分:0)

您可以使用以下句子将所有结果作为字符串

select GROUP_CONCAT(color) from tabex;

点击here或更多信息