gpt4 book ai didi

mysql - 连接来自另一个表的结果

转载 作者:太空宇宙 更新时间:2023-11-03 12:31:38 25 4
gpt4 key购买 nike

我正在处理一个将数据从一个表映射到 CSV 文件的大型查询,因此它本质上看起来像一个基本的选择查询--

SELECT * FROM item_table

--除了*其实是一百行CASE、IF、IFNULL等逻辑。

我被告知要在 select 语句中添加“相似项目”行,它应该是一串以逗号分隔的项目编号。在 category_table 中找到相似的项目,该表可以在两个数据点 column_a 和 column_b 上连接到 item_table,其中 category_table.category_id 具有标识相似项目的数据。

此外,我被告知不要使用子查询。

所以我需要从该表中加入具有相同 category_id 值的 category_table 和 group_concat 项目编号(但不具有任何当前记录的项目编号)。

如果不管说明如何,我只能使用子查询来完成,我会接受,但我想尽可能按照说明使用 join 和 group_concat 来完成——我就是想不通。我该怎么做?

最佳答案

您可以使用称为隐藏列的 mySQL“功能”。

我假设您在项目表中有一个唯一标识每一行的项目 ID。而且,如果我的逻辑正确,则以下查询会执行您想要的操作:

select i.*, group_concat(c.category_id)
from item_table i left outer join
category_table c
on i.column_a = c.column_a and
i.column_b = c.column_b and
i.item_id <> c.category_id
group by i.item_id

关于mysql - 连接来自另一个表的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15046308/

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