Позвольте мне опубликовать это как ответ, а не как комментарий.
Нет, вы не можете использовать аналитические функции для этой цели.Аналитические функции позволяют обобщать данные об известных группах записей.Сводные данные могут быть довольно экзотическими - например, частичные суммы или вычисление процентилей или выборка предыдущей записи в группе.Однако «группа» определена статически в предложении управления окнами.
Тем не менее, возможно представить иерархические данные, так что это возможно.Идея состоит в том, чтобы включить полный путь для каждого элемента:
id parent_path
1 /1
2 /1/2
3 /1/3
4 /1/2/4
5 /1/2/4/5
6 /1/2/4/5/6
7 /1/2/4/5/7
8 /1/3/8
9 /1/2/4/5/7/9
Используя это представление, вы можете использовать оконные функции, чтобы получить все дочерние элементы "1".Тем не менее, оконные функции не нужны вообще.Работает простое выражение like
: parent_path like '/1/%'
.
Проблема с этой структурой данных заключается в настройке триггеров для ее поддержки (определенно возможно, просто немного работы).