我正在做一个网站,其中存储在mysql数据。现在的情况是,我想要一个结构,其中应该有一个带有catogories(cat\u id,cat\u name)的表和一个recipe表(r\u id,r\u name等等)。但条件是一个菜谱可以有多个类别,我必须通过php展示所有属于一个类别的菜谱。我只需要一个合适的结构。我是dbms的新手。我们将不胜感激。
dtcbnfnu1#
您可以向数据库架构中添加连接表,如下所示:
category_recipe (cat_id, r_id)
此表的目的是允许给定的类别Map到多个配方。如果您还希望强制每个配方只能出现一次,则可以在 r_id 中的列 category_recipe .要查找属于某一类别的所有配方,可以使用以下查询:
r_id
category_recipe
SELECT r.r_id, r.r_name FROM categories c INNER JOIN category_recipe cr ON c.cat_id = cr.cat_id INNER JOIN recipe r ON cr.r_id = r.r_id WHERE c.cat_name = 'some category';
1条答案
按热度按时间dtcbnfnu1#
您可以向数据库架构中添加连接表,如下所示:
此表的目的是允许给定的类别Map到多个配方。如果您还希望强制每个配方只能出现一次,则可以在
r_id
中的列category_recipe
.要查找属于某一类别的所有配方,可以使用以下查询: