【问题标题】:MySql create a link between 1 or 2 tablesMySql 创建 1 或 2 个表之间的链接
【发布时间】:2014-10-20 18:59:20
【问题描述】:

有没有更清洁的方法来做到这一点?

Products 表链接到 sub_categories 表,但是如果某个类别没有 sub_categories,我会在 Products 表和表类别之间建立链接?

【问题讨论】:

  • 一个类别可以有 0 到多个子类别,所以我认为您的关系是从类别到子类别。无论如何,我不是 MySql Ninja,但这似乎是正确的路径。

标签: mysql database diagram


【解决方案1】:

有多种方法可以实现这一目标。取决于类别的深度级别以及您的首选实现可以使用以下任一方法实现的内容。

邻接列表模型 具有为每个子类别填充的自引用 parent_id 列的单个类别表。

嵌套集模型 带有“lft”和“rgt”列的单个类别表,用于表示集合中的位置。 "lft" 和 "rgt" 分别表示 Left 和 Right,因为 "LEFT" 和 "RIGHT" 是 SQL 中的保留字。

有一篇很棒的完整博客文章,其中包含示例和图表,详细解释了这两种方法的工作原理 - here

我还建议您查看使用您选择的语言的库,这可能会完成您想要实现的目标。

【讨论】:

    猜你喜欢
    • 2011-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-29
    • 2012-10-10
    • 2010-10-10
    • 2012-12-16
    • 2021-02-01
    相关资源
    最近更新 更多