Пример исходных данных:
| ID | ParentID |
|------|------------|
| 1 | NULL |
| 2 | 1 |
| 3 | 1 |
| 4 | 2 |
| 5 | NULL |
| 6 | 2 |
| 7 | 3 |
В моих исходных данных у меня есть идентификатор элемента и его родительский идентификатор.У некоторых элементов есть родитель, у некоторых нет, у некоторых есть родитель, а у его родителя есть родитель.
Максимальное количество уровней в этой иерархии - 3.
Мне нужно получить эту иерархию поуровни.
Lvl 1
- элементы без родителей Lvl 2
- элементы с родителями, у которых нет родителей Lvl 3
- элементы с родителями, у которых тоже есть родители.
Ожидаемый результат выглядит следующим образом:
| Lvl1 | Lvl2 | Lvl3 |
|-------|----------|----------|
| 1 | NULL | NULL |
| 1 | 2 | NULL |
| 1 | 3 | NULL |
| 1 | 2 | 4 |
| 5 | NULL | NULL |
| 1 | 2 | 6 |
| 1 | 3 | 7 |
Как я могу это сделать?