如何在单个MySQL语句中使用GROUP_CONCAT和UNION

时间:2016-10-20 14:59:45

标签: php mysql union group-concat

我的数据库中有2个表,它们的结构相同但包含不同的记录。每个表都有字段'keywords',其中包含逗号分隔数据。

目前,我正在运行2个MySQL查询以获得2个不同的结果,然后我使用以下MySQL语句进行合并:

SELECT GROUP_CONCAT(keywords) keywords FROM table1

SELECT GROUP_CONCAT(keywords) keywords FROM table2

我确信我应该能够使用单个MySQL语句获得我需要的东西但是我尝试使用GROUP_CONCAT和UNION都失败了。

感谢您提供任何指示/帮助。

2 个答案:

答案 0 :(得分:2)

试试这个:

SELECT GROUP_CONCAT(DISTINCT t.keywords) FROM (
    SELECT t1.keywords FROM table1 t1
    UNION
    SELECT t2.keywords FROM table1 t2
) t

如果您不想要重复的值,那就是:

<script>L_PREFER_CANVAS = true;</script>

答案 1 :(得分:0)

就这么简单:

SELECT GROUP_CONCAT(keywords) keywords FROM table1
UNION
SELECT GROUP_CONCAT(keywords) keywords FROM table2

Here is a fiddle