mysql执行pivot表查询

kfgdxczn  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(359)

我已经创建了SQLFiddlehttp://sqlfiddle.com/#!9/0586e8/1号
我有一个名为products,tags,product\u tags的表。我想检索所有已搜索标签的产品标签
例如,如果我搜索 Mi tag 然后它应该返回有标签的产品的所有标签 Mi Tag

e37o9pze

e37o9pze1#

你可以用 exists 要找到匹配项:

SELECT DISTINCT t.tag_name
FROM product_tags pt JOIN
     tags t
     ON pt.tag_id = t.id 
WHERE EXISTS (SELECT 1
              FROM product_tags pt2 JOIN
                   tags t2
                   ON pt2.tag_id = t2.id
              WHERE pt2.product_id = pt.product_id AND
                    t2.tag_name = 'Mi'
             );

这是说:让我所有的标签,其中相应的产品有一个标签“米”。
这是一个sql小提琴。

相关问题