将三行与另一行连接 table
Join three rows with one row from another table
我正在做一个家庭项目。在我的数据库中,我有两个 table 称为电影和类别。在电影 table 中,有三行名为 category,category_two,category_three。而在类别 table 中只有一个行名称 category_name。
我想将电影 table 中的所有三行与类别 table 中名为 category_table 的行连接起来。
但我不知道如何进行该查询。
请帮我。
您应该这样做:
movies table
------------
id
name
categories table
----------------
id
name
movie_categories table
----------------------
movie_id
category_id
像这样,您可以为一部电影设置任意数量的类别。然后要获取特定电影及其类别,您可以执行以下操作:
select m.*, c.name as category_name
from movies m
left join movie_categories mc on m.id = mc.movie_id
left join categories c on c.id = mc.category_id
where m.name = 'star wars'
我正在做一个家庭项目。在我的数据库中,我有两个 table 称为电影和类别。在电影 table 中,有三行名为 category,category_two,category_three。而在类别 table 中只有一个行名称 category_name。 我想将电影 table 中的所有三行与类别 table 中名为 category_table 的行连接起来。 但我不知道如何进行该查询。 请帮我。
您应该这样做:
movies table
------------
id
name
categories table
----------------
id
name
movie_categories table
----------------------
movie_id
category_id
像这样,您可以为一部电影设置任意数量的类别。然后要获取特定电影及其类别,您可以执行以下操作:
select m.*, c.name as category_name
from movies m
left join movie_categories mc on m.id = mc.movie_id
left join categories c on c.id = mc.category_id
where m.name = 'star wars'