【发布时间】:2018-06-13 18:56:17
【问题描述】:
我有一些看起来像这样的表格:
CREATE TABLE Games (
Id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
Title VARCHAR(100) NOT NULL
);
CREATE TABLE Tags(
Id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
Tag VARCHAR(30) NOT NULL
);
CREATE TABLE GamesTags(
GameId INTEGER NOT NULL,
TagId INTEGER NOT NULL,
PRIMARY KEY (GameId, TagId),
FOREIGN KEY(GameId) REFERENCES Games(Id),
FOREIGN KEY(TagId) REFERENCES Tags(Id)
);
如何进行 SELECT 查询,该查询可以在一列中输出游戏的标题,而在另一列中输出由逗号分隔的所有标签。示例:
Title | Tags |
-----------------------------------
Fortnite | survival, action |
Super Mario | platform, adventure |
【问题讨论】:
-
使用
join和group_concat查找... -
这是一个演示问题,因此如果有的话,您应该在应用层将它们组合在一起。
标签: mysql sql database select tags