【发布时间】:2021-06-13 18:47:13
【问题描述】:
我在 Postgres 数据库中有一个分层表,例如category。结构简单如下:
| id | parent_id | name |
|---|---|---|
| 1 | null | A |
| 2 | null | B |
| 3 | 1 | A1 |
| 4 | 3 | A1a |
| 5 | 3 | A1b |
| 6 | 2 | B1 |
| 7 | 2 | B2 |
我需要从这张表中得到这样的递归深度树结构:
[
{
"id": 1,
"name": "A",
"children": [
{
"id": 3,
"name": "A1",
"children": [
{
"id": 4,
"name": "A1a",
"children": []
},
{
"id": 5,
"name": "A1b",
"children": []
}
]
}
]
},
{
"id": 2,
"name": "B",
"children": [
{
"id": 6,
"name": "B1",
"children": []
},
{
"id": 7,
"name": "B2",
"children": []
}
]
},
]
是否有可能使用WITH RECURSIVE 和json_build_array() 的组合或其他一些解决方案的未知深度?
【问题讨论】:
标签: json postgresql jooq