DB noob здесь. Мне нужны были категории с многоуровневыми вложенными (может быть, от 3 до 4) категорий. например: Одежда> Мужская одежда> Летняя одежда
Итак, я сделал таблицу рекурсивных категорий.
+---------------------------------+
| CATEGORIES |
+---------------------------------+
| id <PK> |
| parent_id <FK -> CATEGORIES.id> |
| name |
+---------------------------------+
+-----------------------------------+
| ITEMS |
+-----------------------------------+
| id <PK> |
| category_id <FK -> CATEGORIES.id> |
| name |
+-----------------------------------+
Проблема в том, что я не знаю, как запросить все предметы под 1-м уровнем родительской категории.
Например, ITEM 1
находится ниже 2-го уровня, Men's clothing (id: 2)
и ITEM 2
находится ниже 3-го уровня, Summer wears (id: 3)
.
Я хочу увидеть все ITEM 1
и ITEM 2
когда я запрашиваю элементы под Clothing (id: 1)
, который является родительским для Men's clothing
и Summer wears
.
Как мне это сделать?
Стек: Node.js, Postgres, Knex . js, TypeScript
.