gpt4 book ai didi

mysql - 如何将第二个表的行合并到 1 个字段

转载 作者:行者123 更新时间:2023-11-29 04:25:36 32 4
gpt4 key购买 nike

我一直在尝试生成一个将搜索 table1 的查询,然后连接 table2.column1 的所有值,其中 table1.id = table2.owner

People
name | id
-------------
tim | 1
jill | 2
john | 3


Dogs
name | owner
--------------
a | 1
b | 1
c | 2
d | 2

使用下表我需要一个可以输出的查询

 name | dogs
-----------
tim | a, b
jill | c, d
john | NULL (or a blank text or just so long as the name john still shows)

我花了几个小时,真的做不到。我认为 OUTER JOIN 和 group_concat() 之间的某种混搭形式。但我并没有真正接近我的答案。

谢谢大家的帮助!

最佳答案

你会想要使用 GROUP_CONCAT 和一个 GROUP BY

SELECT p.name, GROUP_CONCAT(d.name)
FROM people p
LEFT JOIN dogs d
ON p.id = d.owner
GROUP BY p.name

参见 SQL Fiddle with Demo

关于mysql - 如何将第二个表的行合并到 1 个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12379680/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com