|
Привести выборку к дереву
|
|||
---|---|---|---|
#18+
есть несколько таблиц: A) id, name... B) id, A_id, name, C) id, B_id, name количество таблиц и колонок в них может быть разное Допустим получаю выборку из такого запроса: Код: sql 1. 2. 3.
как на PHP из неё получить многоуровневый массив, чтоб его можно было привести в json и получить что-то подобное: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2018, 10:35 |
|
Привести выборку к дереву
|
|||
---|---|---|---|
#18+
Дормедонт Евлампиевич, тут не мешало бы привести результат выборки, из которой уже получается дерево... На всякий случай 20173267 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2018, 13:46 |
|
Привести выборку к дереву
|
|||
---|---|---|---|
#18+
примерная выборка Код: sql 1. 2.
Спасибо за ваш пример. Вопрос по нему, а что если у fio будут другие свойства на уровне mainProject ? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2018, 14:39 |
|
Привести выборку к дереву
|
|||
---|---|---|---|
#18+
по сути, у меня тут паттерн "Компоновщик", т.е. в дереве могут быть как листья, так и ветки.. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2018, 14:41 |
|
Привести выборку к дереву
|
|||
---|---|---|---|
#18+
Дормедонт ЕвлампиевичСпасибо за ваш пример. Вопрос по нему, а что если у fio будут другие свойства на уровне mainProject ?Посмотрите fio = Петров Дормедонт Евлампиевичпо сути, у меня тут паттерн "Компоновщик", т.е. в дереве могут быть как листья, так и ветки..сложно сказать. У меня здесь не привычное дерево Parent-Child, а именно группировка, которая даёт структуру, похожую на дерево. Данные надо отсортировать или на сервере или на PHP (надо сравнить по скорости). А потом уже примените мой алгоритм, может чуть поправите... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2018, 18:05 |
|
Привести выборку к дереву
|
|||
---|---|---|---|
#18+
SQLPowerUserПосмотрите fio = Петров У Петрова в колонке mainProject несколько значений. Мой вопрос был в том, что случится, если будет несколько колонок.. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2018, 18:12 |
|
Привести выборку к дереву
|
|||
---|---|---|---|
#18+
Структуру дерева лучше хранить в отдельной таблице, а сами записи в другой (или в других). Очень маловероятно что тебе нужна именно такая архитектура БД, которая получилась (думаю ещё со многими проблемами из-за неё столкнёшься). При такой структуре БД легче считать все 3 таблицы по одной и собрать их в многоуровневый массив уже на пыхе (через обычный foreach, при желании рекурсивно). Так можно будет нужный массив сделать даже когда у тебя будет 100 таблиц. Но ещё раз повторю, что сильно не рекомендую оставлять БД такой, если есть возможность её пересобрать правильно :) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2018, 19:16 |
|
|
start [/forum/topic.php?fid=23&fpage=27&tid=1460388]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
3ms |
others: | 310ms |
total: | 432ms |
0 / 0 |