gpt4 book ai didi

mysql - 如何使用mysql将一个表中的所有列集成到另一个表的一列中

转载 作者:行者123 更新时间:2023-11-30 21:57:39 25 4
gpt4 key购买 nike

表 1:员工

name| mobile| location
alex| 123 | australia
john| 456 | paris
kohl| 678 | australia

表2:就业

id|location |data
1 |australia|[{"name":"alex","mobile":"123"},{"name":"kohl","mobile":"678"}]
2 |paris |[{"name":"john","mobile":"456"}]

我有两个名为“employee”和“employment”的表。我怎样才能将员工表的所有列值放入就业表的一列中,如表 2 所示。我是 SQL 查询的新手。老实说,我不知道如何进行。任何指针和建议表示赞赏。

最佳答案

您可以使用以下使用 CONCATGROUP_CONCAT 的解决方案来获得此结果:

SELECT location, CONCAT("[", GROUP_CONCAT(CONCAT('{"name":"', name, '","mobile":"', mobile, '"}')), "]") AS data
FROM employee
GROUP BY location

demo: http://sqlfiddle.com/#!9/ab25ee/2/0

要使用employment JOIN employee 表,您可以使用以下解决方案:

SELECT employment.id, employment.location, CONCAT("[", GROUP_CONCAT(CONCAT('{"name":"', name, '","mobile":"', mobile, '"}')), "]") AS data 
FROM employment INNER JOIN employee ON employment.location = employee.location
GROUP BY id, location

demo: http://sqlfiddle.com/#!9/12f9c9/1/0

关于mysql - 如何使用mysql将一个表中的所有列集成到另一个表的一列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44549311/

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