我有这个json树unflattened数据:
{
"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树模型的推荐表示形式是什么?关系数据库模型?
答案 0 :(得分:1)
为了存储分层数据,建议使用闭包表结构。
这是一种非常简单但功能强大的结构,用于以层次结构存储,检索和删除数据。
它将只包含三列 - 祖先,后代,深度
您可以在此处查看更多信息https://coderwall.com/p/lixing/closure-tables-for-browsing-trees-in-sql
有关其他可能结构及其缺陷的更多信息,请参见SQL反模式' Bill Karwin第3章和“天真的树木”预订