У меня есть две таблицы, одна из них sections
, это id
, parent_table
и parent_id
, другая pages
, которая имеет id
и status
(и другие) столбцы. Родителем раздела может быть другой раздел или страница с соответствующими значениями parent_table
. Как я могу узнать с помощью оконных функций, находится ли данный раздел на странице status = 1
или нет? (используя MySQL 8.0 (или MariaDB 10.2), но в крайнем случае я мог бы преобразовать в postgresql, если это крайне необходимо).
Пример данных:
секции
id|parent_table|parent_id
1 |pages |1
2 |sections |1
3 |pages |2
4 |sections |2
страницы
id|status
1|1
2|0
Чтобы воссоздать пример данных:
create table pages (id int not null primary key, status int not null) collate utf8mb4_general_ci;
create table sections (id int not null primary key, parent_table varchar(20), parent_id int not null) collate utf8mb4_general_ci;
insert into pages values (1,1),(2,0);
insert into sections values (1,'pages',1),(2,'sections',1),(3,'pages',2),(4,'sections',2);