【发布时间】:2018-04-14 11:38:56
【问题描述】:
我在将两个查询合并为一个时遇到问题。我的示例数据库如下所示:https://www.db-fiddle.com/f/b2hsQiqzfqrDhRXzRmM49m/4
我想给出与第一个查询匹配的所有项目及其标签:
标题、描述、标签 // 链接中的查询 #3
我遇到的主要问题是将数据从一个查询传输到另一个查询。 item.iditem = 112,其中 112 是第一个查询的 idit。我的尝试:
SELECT title, description, i.idItem
FROM tags t INNER JOIN
itemtags it
ON t.idTag = it.idtag INNER JOIN
item i ON it.idItem = i.idItem
WHERE t.name = "java";
SELECT GROUP_CONCAT(`Name`) as tags
FROM tags
WHERE idtag IN ( SELECT it.idtag FROM itemtags it,tags t WHERE it.idtag=t.idtag AND it.iditem = 112);
SELECT *
FROM (SELECT title, description FROM tags t INNER JOIN itemtags it ON t.idTag = it.idtag INNER JOIN item i ON it.idItem = i.idItem WHERE t.name = "java") as x,
(SELECT GROUP_CONCAT(`Name`) as tags FROM tags JOIN itemtags ON tags.idtag = itemtags.idtag INNER JOIN item ON itemtags.iditem = item.iditem AND item.iditem = 112) as y;
【问题讨论】:
标签: mysql sql database database-design tags