У меня вопрос по запросу в mysql.
Я сделал очень простой тест
Table test
id,
name,
parent_id
Запрос
with recursive step00(id,name,parent_id) as
(
select id,name,parent_id
from test
where parent_id = 3 #test id
union all
select r.id, r.name, r.parent_id
from test r
inner join step00 on r.parent_id = step00.id
) select count(*) from step00;
Пользователь может иметь 1 пользователя как направления. (parent_id) Я вставил 500 000. У одного пользователя 4689 пользователей (максимум 10 уровней). Я выполнил приведенный выше запрос, и для возврата 4689 пользователей потребовалось 12 секунд.
Я хочу создать столбец, который сохранит все дочерние идентификаторы в json, чтобы уменьшить их, чтобы дочерние учетные записи получили все дочерние аккаунты быстрее. Есть ли альтернативный способ добиться этого без одного дополнительного столбца с быстрым результатом?