如果我有这三个表:
table1: id, title, content
connection: id_t1, id_t2
table2: id, title, content
在我的情况下,我只选择table1的单个行。对于此结果,table2中有多个行。两个表格的连接可以在表格“#connection;'
中找到如何创建查询以获得此结果?
table1-title
table2-content1
table2-content2
table2-content3
table1-content
答案 0 :(得分:0)
如果我理解正确,我相信你想使用带有GROUP_CONCAT功能的GROUP BY 查询看起来像这样:
SELECT table1.title, GROUP_CONCAT(table2.content) as table2.group_content, table1.content
FROM table1
JOIN connection on table1.id = id_t1
JOIN table2 on connection.id_t2 = table2.id
GROUP BY table2.content
这会为每个table1.id提供一行,多个table2.content行连接成一列(在本例中称为table2.group_content)。
答案 1 :(得分:0)
select title from table1 where title_id = 1
UNION
select t2.content
from table2 t2, table1 t1, connection c
where t1.title_id = 1
and t1.title_id = c.id_t1
and c.id_t2 = t2.title_id
UNION
select content from table1 where title_id = 1