JSON 关系数据库模型中的树子表示

JSON Tree-Child Representation in a Relational Database Model

我有这个 json 树未展平数据:

{
  "date": "02-02-2017",
  "records": [
    {
      "title": "Title name",
      "label": "Label name",
      "value": "Value",
      "members": [
        {
          "label": "string",
          "value": "string"
        },
        {
          "title": "Second title",
          "label": "Label",
          "value": "Value",
          "members": [
              {
                 "label": "string",
                 "value": "string"
              }
          ]
        }
      ]
    }
  ]
}

每条记录可以有子成员,每个成员也可以有子成员。

这个 json 树模型在关系数据库模型中的推荐表示形式是什么?

为了存储分层数据,建议使用闭包 table 结构。

这是一个非常简单但功能强大的结构,用于以层次结构存储、检索和删除数据。

它将仅包含三列 - 祖先、后代、深度

您可以在这里查看更多信息https://coderwall.com/p/lixing/closure-tables-for-browsing-trees-in-sql

有关其他可能的结构及其缺陷的更多信息,请参阅 'SQL Antipatterns' Bill Karwin 的书第 3 章 'Naive trees'