我不知道这是否是我问题的正确标题,但我不是高级SQL用户,我只知道基础:)
create table movie (id int(4), title varchar(255));
create table genre (id int(4), mid int(4), genre varchar(200));
insert into movie values
(1, 'Iron man'),
(2, 'Titanic');
insert into genre values
(1,1,'Sci-Fi'),
(2,1,'Action'),
(3,2,'Drama');
这里有2张桌子,一张用于电影,一张用于流派。
我想创建一个看起来像这样的SQL。
ID | Title | Genre
1 | Iron Man | Action, Sci-Fi
在表格中mid
是来自movie table
的电影的ID ..
答案 0 :(得分:0)
select movie.id, title, group_concat(genre) from movie
left join genre on mid=movie.id
where movie.id=1
group by movie.id
答案 1 :(得分:0)
对于所有包含Genre
详细信息的电影:
SELECT
m.id AS ID,
m.title AS Title,
group_concat(g.genre) AS Genre
FROM
movie m
LEFT OUTER JOIN genre g ON (g.mid = m.id)
GROUP BY m.id