gpt4 book ai didi

mysql - sql中的数据透视困难

转载 作者:行者123 更新时间:2023-11-29 06:49:23 25 4
gpt4 key购买 nike

我有两个表,titleterritory。 Territory 告诉我标题可用的位置:

`title`
- id
- name

`territory`
- title_id (FK)
- territory

我希望输出看起来像这样:

id      name     territory     territory     territory     etc...
1 Titanic US GB FR

我目前正在做一个 INNER JOIN,它为上面的内容提供了三行而不是一行:

SELECT * FROM title inner join territory on title.id = territory.title_id

我如何在上面的输出中得到它,每个标题只有一行,并且所有地区都列在该行中?

最佳答案

一个快速的替代解决方案可能是将所有地区汇总到一个列中:

SELECT t.id, t.name, GROUP_CONCAT(tr.territory, ',') AS `territories`
FROM title t
JOIN territory tr ON t.id = tr.title_id
GROUP BY t.id, t.name

之后通常很容易在您的应用程序中拆分结果。但是如果你真的想要一个枢轴 you'll have to be tricky .

关于您的头衔,没有必要在此处使用外部联接,除非您不确定头衔是否影响了领土。在这种情况下,请改用 LEFT JOIN

关于mysql - sql中的数据透视困难,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16491445/

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