Mysql 执行 pivot table 查询
Mysql execute pivot table query
我创建了sqlfiddle
http://sqlfiddle.com/#!9/0586e8/1
我有 table 个调用的产品标签,product_tags.I 想检索所有搜索过标签的产品标签
例如,如果我搜索 Mi tag
,那么它应该 return 具有标签 Mi Tag
的产品的所有标签
您可以使用 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'
);
这就是说:获取所有标签,其中相应产品的标签为“MI”。
Here 是 SQL Fiddle.
我创建了sqlfiddle http://sqlfiddle.com/#!9/0586e8/1
我有 table 个调用的产品标签,product_tags.I 想检索所有搜索过标签的产品标签
例如,如果我搜索 Mi tag
,那么它应该 return 具有标签 Mi Tag
您可以使用 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'
);
这就是说:获取所有标签,其中相应产品的标签为“MI”。
Here 是 SQL Fiddle.