【问题标题】:GROUP_CONCAT with LEFT OUTER JOIN of two tablesGROUP_CONCAT 与两个表的 LEFT OUTER JOIN
【发布时间】:2014-07-19 04:39:25
【问题描述】:
SELECT table1.value, table2.additionalinfo
FROM table1
LEFT OUTER JOIN table2
ON table1.ID=table2.ID

我尝试输出这样的东西

Value   AdditionalInfo
blah    something, somethingelse, more
blah2   NULL
blah3   stuff

但我明白了

Value   AdditionalInfo
blah    something
blah    somethingelse
blah    more
blah2   NULL
blah3   stuff

我尝试使用GROUP_CONCATGROUP_CONCAT(DISTINCT)

SELECT GROUP_CONCAT(table1.value), table2.additionalinfo
FROM table1
left outer JOIN table2
ON table1.ID=table2.ID ORDER BY table1.value

当我添加 GROUP_CONCATORDER BY table1.value 时,它只列出每个值的一个附加信息,但没有任何值,并且不会得到重复的附加信息。我将订单到处移动,但无济于事。

【问题讨论】:

    标签: php sql left-join group-concat


    【解决方案1】:

    我认为您需要在 AdditionalInfo 列上而不是在 table1.value 上执行 GROUP_CONCAT

    SELECT table1.value, 
    GROUP_CONCAT(distinct table2.additionalinfo) additionalinfo
    FROM table1
    left outer JOIN table2 ON table1.ID=table2.ID 
    GROUP BY table1.value
    ORDER BY table1.value
    

    【讨论】:

      猜你喜欢
      • 2014-10-23
      • 1970-01-01
      • 2010-09-29
      • 2012-06-21
      • 1970-01-01
      • 2014-07-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多