我目前正在制作一个项目,该项目从用户个人资料中收集数据,并根据数据过滤掉查询结果。
所以我有一个家庭帐户,有不同的家庭成员。用户将填写每个成员的健康基本信息。然后,这些信息将用于查询结果。一个例子是如果一个家庭成员患有糖尿病。当家庭帐户试图浏览食谱时,而不是向用户显示数据库中的所有食谱,而是显示对糖尿病患者没有风险的食谱。
什么是为食谱构建数据库的最佳方法。
表1 =食谱 表2 =成分
对于配方中的每种成分,他们都有自己的表来定义他们的营养价值,这样我就可以有效地确定要过滤掉哪些食谱。我如何构建成分的列?如果每种成分都需要有自己的桌子。
答案 0 :(得分:0)
您需要一个联接表,例如recipe_ingredients
,
recipe_id | ingredient_id
1 | 1 -- Recipe #1 has ingredients 1, 2, 3
1 | 2
1 | 3
2 | 2 -- Recipe #2 has ingredients 2, 5
2 | 5
如果您想明确订购原料,您还可以拥有order
或index
列。
您可能需要考虑花一些时间阅读SQL / RDBMS基础知识,因为这与它的水平差不多。