gpt4 book ai didi

mysql left join subselect

转载 作者:行者123 更新时间:2023-11-29 00:40:34 26 4
gpt4 key购买 nike

我有这种格式的表格:

tag | item
----------
1 | 1
2 | 2
2 | 3
3 | 1
3 | 2
3 | 3

我必须选择那些标签,这些标 checkout 现在每个项目的集合中。

例如:

items={2,3} --> tags{2,3},item 2有tags 2,3,item 3有tags 2,3,常用tags为2,3

items={1,2,3} --> tags{},item 1有tags 1,3,item 2有tags 2,3,item 3有tags 2,3,常用tags为3

items={1,3} --> tags{3},item 1有tags 1,3,item 3有tags 2,3,常用tags为3

作为输入,我有一组项目。我不知道如何编写这样的查询。

感谢您的回复。

最佳答案

我认为您正在寻找共享相同标签的项目列表,对吗?

此查询应该为您完成。它由一个内部摘要查询组成,该查询将每个项目的标签组合在一起,然后是一个外部摘要查询,该查询将共享标签组的项目组合在一起。

SELECT GROUP_CONCAT(item ORDER by ITEM) items, tags
FROM (
SELECT GROUP_CONCAT(tag ORDER BY tag) tags, item
FROM tbl
GROUP BY item
)t
GROUP BY tags
ORDER BY tags

对于您问题中的测试数据集,它返回:

| ITEMS | TAGS |
----------------
| 1 | 1,3 |
| 2,3 | 2,3 |

也就是说,您的商品 1 具有标签 1 和 3。您的商品 2 和 3 具有标签 2 和 3。

去 fiddle 吧! http://sqlfiddle.com/#!2/6a927/3/0

关于mysql left join subselect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12460008/

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